我有以下 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
来选择所有 checkbox
selected
(或使用 :checked
-> input[type=checkbox]:checked
) 类,然后获取tr id
。
顺便说一下,您的 ID 无效。根据W3C :
ID and NAME tokens must begin with a letter ([A-Za-z]) and may be
followed by any number of letters, digits ([0-9]), hyphens ("-"),
underscores ("_"), colons (":"), and periods (".").
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>