$(本).parent()remove()方法。 不在IE工作
任何想法为什么下面的代码不能在IE中工作,但在FF和Chrome它做:
$(".remove", document.getElementById("ccusers")).live("click", function () { $(this).parent().remove(); });
如果我尝试:
alert($(this).parent().attr("id"));
我在FF和Chrome中提醒了ID而不是IE。
有什么想法需要以不同的方式完成吗?
$(".remove, #ccusers").bind("click", function () { $(this).parent().remove(); });
要设置shure,你要删除树中的右父元素及其子元素,你可以试试这个:
$(this).parents('theParentYouWantToRemove').remove();
您可能会发现这很有用: jQuery中的bind和live方法有什么区别?
PS我建议你只使用$('.remove')
,因为我没有看到你为什么要做$('.remove, #ccusers')
,因为它实际上意味着:
元素.remove
OR element #ccusers
,
通过这样做: $('.element' , '#element')
(看看引号!)你的’第二’元素将绝对没有 ! (像这里建议的那样)。
所以我唯一有效的建议是:
$(".remove").bind("click", function () { $(this).parents('#ccusers').remove(); // or .parent() as I explained above });
DEMO jsBin
(下载并在IE中试用)
HTML
User1 User2 Remove
JS
$(".remove", "#ccusers").live("click", function() { $(this).parent().remove(); });
在IE7中对我来说很好用,请看小提琴: http : //jsfiddle.net/c4urself/NrKRF/
如果你是gunna使用jQuery。 使用 jQuery:
$(".remove", "#ccusers").live("click", function () { $(this).parent().remove(); });