我有一个HTML表格,我的行有一个onclick事件。
我想知道是否有可能找出该行的哪个单元格被点击,而每个单元格没有单独的处理程序?
我有一张桌子:
<tr class="new_row">
<td class="date">date</td>
<td class="name">name</td>
<td class="delete">delete</td>
</tr>
和jquery:
$(".new_row").click(function(){
if(delete was clicked){
delete the row
}
});
这就是我想要做的事情,检测是否点击了删除单元格。
这可能吗?
答案 0 :(得分:5)
首先,您不应该定义多个具有相同ID的元素,这会导致麻烦,您可以将id='delete'
替换为class='delete'
。
// on click td with class delete:
$("td.delete").click(function(){
//delete was clicked so remove tr
$(this).parent().remove();
});
答案 1 :(得分:3)
你可以这样做
<强> Live Demo 强>
$(".new_row").click(function(event){
if($(event.target).text() == 'delete')
{
$(this).remove();
}
});
答案 2 :(得分:1)
查看event.target
的ID。如果它与delete
匹配,则可以处理删除。
但是,因为在表中,我猜你有多行。如果是这种情况,这是否意味着您有多个具有相同ID的单元格?如果是这样,这是无效的HTML,当你尝试使用CSS选择器时,它可能会导致你的jQuery代码出现问题。