按下按钮时获取 td 的顺序



我做了一个表格,每个 td 中有一个按钮,每个 tr 中有一个按钮,我想在按下相应的按钮时获取 td 的序列,但我得到序列 0-4,因为父项在下一行后发生变化。有没有办法获取从 0-11 的按钮序列。这是我的jQuery代码。

$('.act-butn').on('click', function() {
        var btnClicked = $(this).parent().index();
        $('.activity1').text(btnClicked); 
});

这是我的桌子

<table class="beta" width=443 id="logButtons">
  <center>
    <tr>
      <td><input type='button' name='Production' value='Production' id="actB1" class="act-butn" /></td>
      <td> <input type='button' name='Break' value='Break' id="actB2" class="act-butn" /></td>
      <td> <input type='button' name='Medical' value='Medical' class="act-butn" /></td>
      <td> <input type='button' name='Comfort Break' value='Comfort Break' class="act-butn" /></td>
    </tr>
    <tr>
      <td> <input type='button' name='Meeting' value='Meeting' class="act-butn" /></td>
      <td> <input type='button' name='Training' value='Training' class="act-butn" /></td>
      <td> <input type='button' name='Business Improvement' value='Bus. Improvement' class="act-butn" /></td>
      <td> <input type='button' name='Idle' value='Idle' class="act-butn" /></td>
    </tr>
    <tr>
      <td> <input type='button' name='Downtime' value='Downtime' class="act-butn" /></td>
      <td> <input type='button' name='Follow up' value='Follow up' class="act-butn" /></td>
      <td> <input type='button' name='one-to-one' value='one to one' class="act-butn" /></td>
      <td> <input type='button' name='Coaching' value='Coaching' class="act-butn" /></td>
    </tr>
  </center>
</table>

请提出更改建议。

如果你想获取<input>索引,你需要一个集合,所有这些输入的集合来索引

var $inputs = $('.act-butn').on('click', function() {
     // index of `this` in `$inputs` collection
     var btnClicked = $inputs.index(this);
     $('.activity1').text(btnClicked); 
});

或者,如果您希望根据单击的输入在所有<td><td>索引:

var $td = $('.act-butn').on('click', function() {         
     var btnClicked = $td.index( $(this).parent() );
     $('.activity1').text(btnClicked); 
}).parent();

演示

最新更新