使用Jquery获取当前表行的Id

Mic*_*ick 29 html jquery

嗨,我在表单中有以下代码.当用户单击按钮时,我想获取当前行以识别单击了哪个按钮

<tr  id="TEST1" >
    <td align="left" valign="middle">
        <div align="right">Contact</div>
    </td>
    <td colspan="4" align="left" valign="middle">
        <input type="text" id="contact1" size="20" />  Number 
        <input type="text" id="number1" size="20" /> 
    </td>
    <td>
        <input type="button"  value="Button 1" id="contact1" />
    </td>
</tr>
<tr id="TEST2" >
    <td align="left" valign="middle">
        <div align="right">Contact</div>
    </td>
    <td colspan="4" align="left" valign="middle">
        <input type="text" id="contact2" size="20" />  Number 
        <input type="text" id="number2" size="20" /> 
    </td>
    <td>
        <input type="button"  value="Button 1"  id="contact2" />
    </td>
</tr>
<tr id="TEST3" >
    <td align="left" valign="middle">
        <div align="right">Contact</div>
    </td>
    <td colspan="4" align="left" valign="middle">
        <input type="text" id="contact3" size="20" />  Number 
        <input type="text" id="number3" size="20" /> 
    </td>
    <td>
        <input type="button"  value="Button 1"  id="contact2" />
    </td>
</tr>
Run Code Online (Sandbox Code Playgroud)

我认为以下Jquery将返回ID名称,但它不会

$('input[type=button]' ).click(function() {
    bid = (this.id) ; // button ID 
    trid = $('tr').attr('id'); // table row ID 
});
Run Code Online (Sandbox Code Playgroud)

有人可以给我一些建议吗?谢谢

Nic*_*ver 74

您可以使用它.closest()来启动当前<tr>父级,如下所示:

$('input[type=button]' ).click(function() {
   var bid = this.id; // button ID 
   var trid = $(this).closest('tr').attr('id'); // table row ID 
 });
Run Code Online (Sandbox Code Playgroud)


Rob*_*itt 8

你的代码更像是这样的:

$('tr input[type=button]').click(function(){
    id = $(this).closest('tr').attr('id');
});
Run Code Online (Sandbox Code Playgroud)