我正在尝试删除使用jquery动态添加的行。因此,当我点击删除图像时,它应该删除相应的行。但我的代码不起作用。请有人帮我找到我的错误。
$("body").on("click", "#tab_logic .del", function() {
alert("i am");
$("tab_logic").parents("tr").remove();
alert("worked"); // not executing because of above code
});

答案 0 :(得分:0)
描述:对于集合中的每个元素,通过测试元素本身并遍历DOM树中的祖先来获取与选择器匹配的第一个元素。
$("tab_logic").closest("tr").remove();
答案 1 :(得分:0)
$("tab_logic") //Is that a valid selector? that supposed to be starts with # as per your code block.
$("body").on("click", "#tab_logic .del", function() { $("#tab_logic").parents("tr").remove();}
答案 2 :(得分:0)
只需使用this
。
当在类del
的元素上引发click事件时,回调将在其上下文中包含该元素,您可以使用它来编写逻辑。
所以而不是:
$("tab_logic").parents("tr").remove();
使用
$(this).parents("tr").remove();
这是工作样本,因为你没有提供html,我只是假设一个简单的测试。
$("body").on("click", "#tab_logic .del", function() {
$(this).parents("tr").remove();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
<table id="tab_logic" border=1>
<tr><td>Data1</td><td><a href="#" class="del">Delete</a></td></tr>
<tr><td>Data2</td><td><a href="#" class="del">Delete</a></td></tr>
<tr><td>Data3</td><td><a href="#" class="del">Delete</a></td></tr>
</table>
答案 3 :(得分:0)
如果你的行是动态的,那么你必须在
中编写你的jquery代码 $(文件)。在(&#39;单击&#39;&#39;选择器&#39;,函数(){
//在此处写下删除行代码
});