Closed. This question needs to be more focused。它当前不接受答案。












想改善这个问题吗?更新问题,使其仅关注editing this post的一个问题。

4年前关闭。



Improve this question




我有以下HTML表格布局
<tbody>
  <tr id="13" role="row" class="odd">
    <td class="sorting_1">
      <input type="checkbox" class="checkall selected" id="checkall" name="checkall[]">
    </td>
    <td>4</td>
    <td>4.00</td>
    <td>4</td>
  </tr>
  <tr id="12" class="even" role="row">
    <td class="sorting_1">
      <input id="checkall" class="checkall selected" type="checkbox" name="checkall[]">
    </td>
    <td>1</td>
    <td>1.00</td>
    <td>1</td>
  </tr>
  <tr id="11" class="odd" role="row">
    <td class="sorting_1">
      <input id="checkall" class="checkall" type="checkbox" name="checkall[]">
    </td>
    <td>4</td>
    <td>5.00</td>
    <td>2</td>
  </tr>
</tbody>

现在,我需要获取一个tr id值,只需要获取所选输入复选框的行id值。
例如:我选择了一行id =“13”和id =“12”
所以我需要得到13和12,而不是11。

最佳答案

您可以使用.each选择所有具有checkboxselected(或使用:checked-> input[type=checkbox]:checked),然后获取tr id

顺便说一句,您的ID无效。根据W3C:



Jsfiddle

$(document).ready(function() {
  var ids = [];
  $('table input[type=checkbox].selected').each(
    function(i) {
      ids.push($(this).closest('tr').attr('id'));
    });
  $('.results').html(ids);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<table>
  <tr id="13" role="row" class="odd">
    <td class="sorting_1">
      <input type="checkbox" class="checkall selected" id="checkall" name="checkall[]">
    </td>
    <td>4</td>
    <td>4.00</td>
    <td>4</td>
  </tr>
  <tr id="12" class="even" role="row">
    <td class="sorting_1">
      <input id="checkall" class="checkall selected" type="checkbox" name="checkall[]">
    </td>
    <td>1</td>
    <td>1.00</td>
    <td>1</td>
  </tr>

  <tr id="11" class="odd" role="row">
    <td class="sorting_1">
      <input id="checkall" class="checkall" type="checkbox" name="checkall[]">
    </td>
    <td>4</td>
    <td>5.00</td>
    <td>2</td>
  </tr>

</table>

<div class="results"></div>

10-04 16:17
查看更多