我的HTML正文中有这样的内容:
<p id="test.txt"><a href="javascript:void(0);" class="disp">test.txt</a> [<a href="javascript:void(0);" class="del">x</a>]</p>
<p id="test2.txt"><a href="javascript:void(0);" class="disp">test2.txt</a> [<a href="javascript:void(0);" class="del">x</a>]</p>
<p id="test3.txt"><a href="javascript:void(0);" class="disp">test3.txt</a> [<a href="javascript:void(0);" class="del">x</a>]</p>
<p id="test4.txt"><a href="javascript:void(0);" class="disp">test4.txt</a> [<a href="javascript:void(0);" class="del">x</a>]</p>
<p id="test5.txt"><a href="javascript:void(0);" class="disp">test5.txt</a> [<a href="javascript:void(0);" class="del">x</a>]</p>
<p id="test6.txt"><a href="javascript:void(0);" class="disp">test6.txt</a> [<a href="javascript:void(0);" class="del">x</a>]</p>
这是相关JQuery代码的一部分:
$('a').click( function(e) {
e.preventDefault();
var myClass = $(this).attr("class");
if (myClass==="del"){
var idToDelete = $(this).parent().attr("id");
alert(idToDelete);
$("#" + idToDelete).remove();
return;
}
})
单击其中一个链接时,似乎正确获取了ID,但是,该段落未从页面中删除。我错过了什么?
谢谢!
答案 0 :(得分:1)
您可以遍历要删除的元素,只需使用
即可 $(this).parent().remove();
由于$("#" + idToDelete).remove();
中的元字符.
需要使用idToDelete
进行转义,因此\\
无法正常工作。
注意,您的代码可以改进为
$('a.del').click( function(e) {
e.preventDefault();
$(this).parent().remove();
})