使用jQuery在td中单击获取表id

时间:2013-11-24 14:55:55

标签: jquery identifier

我在表头中有一个包含几个输入字段的tr。

有没有办法通过点击其中一个输入字段我可以得到父表的id?

我的tr看起来像这样:

<table id="tableID">
    <thead>
        <tr>
            <th><input type="text" name="input1" id="input1" /></th>
            <th><input type="text" name="input2" id="input2" /></th>
            <th><input type="text" name="input3" id="input3" /></th>
        </tr>
    </thead>
    <tbody>
        // ...
    </tbody>
</table>

4 个答案:

答案 0 :(得分:30)

在点击处理程序中,您可以使用.closest()

$(this).closest('table').attr('id')

答案 1 :(得分:2)

$("#tableID").on("click","input[type='text']",function(){

$(this).closest('table').attr('id');

});

参考 closest()

答案 2 :(得分:1)

您应该委派事件以避免多个处理程序,然后使用delegateTarget来定位当前的TABLE:

$('table').on('click', 'input', function (e) {
    alert(e.delegateTarget.id);
});

答案 3 :(得分:1)

您可以使用

$('#tdId').click(function(){
    $(this).parents('table').attr('id');
});

它有效。