1

呃,为什么这不起作用,我在我的网站上多次使用类似这样的代码..但现在不起作用..

HTML

<div><span>a</span><input type='hidden' /> <input type='button' onClick='Remove(event)' />

jQuery

function Remove(e){
e.preventDefault();
$(this).closest('div').remove();
}

看起来 $(this) 不是我的按钮。我用 alert($(this).val()) 进行了测试,没有任何结果。

在此处输入图像描述

4

2 回答 2

4

如何将一个类添加到按钮元素并将处理程序绑定到按钮

<div>
   <span>a</span>
   <input type='hidden' /> 
   <input type='button' class'removeDiv' />

代码:

$(function () {
    $('.removeDiv').click (function () { 
         $(this).parent().remove();
         // As I see the input is direct child of the div
    });
});

我的 div 也是从客户端和服务器端创建的。它很容易添加 onclick 功能而不是在新项目上取消绑定重新绑定,不是吗?

在这种情况下,您可以使用委托事件。见下文,

$(function () {
    //Replace document with any closest container that is available on load.
    $(document).on('click', '.removeDiv', function () { 
         $(this).parent().remove();
         // As I see the input is direct child of the div
    });
});
于 2012-10-04T18:28:11.170 回答
3

这应该工作!

HTML

<div><span>a</span><input type='hidden' /> <input type='button' onClick='Remove(this)' />

jQuery

function Remove(obj){
    $(obj).closest('div').remove();
}
于 2012-10-04T18:30:30.730 回答