【发布时间】:2014-08-01 14:25:39
【问题描述】:
我有一个如下所示的表格:
<table bordered='1'>
<tr>
<td>Apple</td><td><a href="#" onclick="delete(this);">x</a></td>
</tr>
<tr>
<td>Ball</td><td><a href="#" onclick="delete(this);">x</a></td>
</tr>
</table>
<script>
function delete(clickedOne) {
alert(clickedOne);
clickedOne.parent().parent().remove();
}
</script>
现在我要做的是删除单击“x”的“tr”。为此,我需要让我的删除功能知道单击了哪个“x”。但是“this”作为参数似乎不起作用。
注意:我不能将 id 放在我的表格元素中。
【问题讨论】:
-
您正在使用 jquery。你为什么不一直使用它?
-
避免使用内联 JavaScript。另外,不要将你的函数命名为
delete。 -
除了上述有效的 cmets 之外,
clickedOne是一个 DOM 元素,而不是一个 jQuery 对象。此外,delete不是一个很好的函数名称,因为它是一个保留关键字。 -
在 POJS 中,父母作为属性被访问(比 jQuery 的 parent 方法快得多):
var tr = clickedOne.parentNode.parentNode; tr.parentNode.removeChild(tr).
标签: javascript jquery