寻找一种更优雅的写作方式

时间:2012-11-27 21:55:07

标签: jquery

我有一张看起来像这样的表:

​<table id="mytable">
   <tbody>
       <tr id="tempRowID">
           <td class="delete"> <img src="myImage.png" /> </td>
       </tr>
   </tbody>
</table>​​​​​​​​​​​​​​​​​​​

单击img时,我需要将表ID放入变量中。这个函数正在运行,但是所有的parent()跳转看起来都很难看:

$(document).on('click', 'table td', function () {

    var currentTable = $(this).parent().parent().parent().attr("id");

});

我试过了:

    var currentTable = $(this).eq(3).attr("id");
    var currentTable = $(this).find("table").attr("id");

有什么建议吗?

3 个答案:

答案 0 :(得分:2)

使用.closest获取距离table最近的祖先。

var currentTable = $(this).closest("table").attr("id");

答案 1 :(得分:1)

如何使用.closest()

var currentTable = $(this).closest('table').attr("id");

答案 2 :(得分:1)

使用.closest()方法

var currentTable = $(this).closest('table').attr("id");