如何从选定行数据表中获取数据值
How to get data-value from selected row datatables
我正在使用 jQuery 数据tables,使用复选框和 Select 扩展进行行选择。
我需要从复选框行中获取数据值。我使用了这段代码,但无法获取数据:
var rows_selected = table.column(0).checkboxes.selected();
$.each(rows_selected, function (index, rowId) {
var data = table.row(index).data();
fed_id = data['federation_id'];
console.log(fed_id);
});
这是 table 的 html 代码:
<table id="customerTable" class="table color-table info-table table-striped display dataTable no-footer dt-checkboxes-select" role="grid" aria-describedby="customerTable_info" style="width: 961px;">
<thead>
<tr role="row">
<th class="dt-checkboxes-cell dt-checkboxes-select-all sorting_disabled" tabindex="0" aria-controls="customerTable" data-col="0" aria-label="">
<input type="checkbox"></th>
<th>Cognome</th>
<th>Nome</th>
<th>Codice Fiscale</th>
<th>Federazione/Ente</th>
<th>Codice tessera</th>
<th>Data inizio</th>
<th>Data fine</th>
<th>Stato</th>
<th></th>
</tr>
</thead>
<tbody>
<tr id="2554" data-federation_id="79" role="row" class="odd">
<td class=" dt-checkboxes-cell"><input type="checkbox" class="dt-checkboxes"></td>
<td class="sorting_1">Mario</td>
<td>Rossi</td>
<td>ddddddddd</td>
<td>ddddddddd</td>
<td></td>
<td></td>
<td></td>
<td><span class="label label-info">DA INVIARE</span></td>
<td> </td>
</tr>
<tr id="2558" data-federation_id="24" role="row" class="even">
<td class=" dt-checkboxes-cell"><input type="checkbox" class="dt-checkboxes"></td>
<td class="sorting_1">Mario</td>
<td>Verdi</td>
<td>ddddddddd</td>
<td>ddddddddd</td>
<td></td>
<td></td>
<td></td>
<td><span class="label label-info">DA INVIARE</span></td>
<td> </td>
</tr>
</tbody>
</table>
您可以使用以下 jQuery 获取所选复选框的联盟 ID:
var checked_rows = $('input.dt-checkboxes:checkbox:checked').parents("tr");
$.each(checked_rows, function (key, val) {
console.log($(this).attr('data-federation_id'));
});
第一行获取所有选中的复选框,然后找到这些复选框的 <tr>
父项。
然后代码遍历找到的 <tr>
个元素以提取每个 ID。
请注意,此 jQuery 不使用任何 DataTable 函数,并且独立于 DataTables 提供的功能。如果您只想获取 ID,那么这应该没问题。如果您想更改数据表的 content/behavior,那么这可能无济于事。
我正在使用 jQuery 数据tables,使用复选框和 Select 扩展进行行选择。
我需要从复选框行中获取数据值。我使用了这段代码,但无法获取数据:
var rows_selected = table.column(0).checkboxes.selected();
$.each(rows_selected, function (index, rowId) {
var data = table.row(index).data();
fed_id = data['federation_id'];
console.log(fed_id);
});
这是 table 的 html 代码:
<table id="customerTable" class="table color-table info-table table-striped display dataTable no-footer dt-checkboxes-select" role="grid" aria-describedby="customerTable_info" style="width: 961px;">
<thead>
<tr role="row">
<th class="dt-checkboxes-cell dt-checkboxes-select-all sorting_disabled" tabindex="0" aria-controls="customerTable" data-col="0" aria-label="">
<input type="checkbox"></th>
<th>Cognome</th>
<th>Nome</th>
<th>Codice Fiscale</th>
<th>Federazione/Ente</th>
<th>Codice tessera</th>
<th>Data inizio</th>
<th>Data fine</th>
<th>Stato</th>
<th></th>
</tr>
</thead>
<tbody>
<tr id="2554" data-federation_id="79" role="row" class="odd">
<td class=" dt-checkboxes-cell"><input type="checkbox" class="dt-checkboxes"></td>
<td class="sorting_1">Mario</td>
<td>Rossi</td>
<td>ddddddddd</td>
<td>ddddddddd</td>
<td></td>
<td></td>
<td></td>
<td><span class="label label-info">DA INVIARE</span></td>
<td> </td>
</tr>
<tr id="2558" data-federation_id="24" role="row" class="even">
<td class=" dt-checkboxes-cell"><input type="checkbox" class="dt-checkboxes"></td>
<td class="sorting_1">Mario</td>
<td>Verdi</td>
<td>ddddddddd</td>
<td>ddddddddd</td>
<td></td>
<td></td>
<td></td>
<td><span class="label label-info">DA INVIARE</span></td>
<td> </td>
</tr>
</tbody>
</table>
您可以使用以下 jQuery 获取所选复选框的联盟 ID:
var checked_rows = $('input.dt-checkboxes:checkbox:checked').parents("tr");
$.each(checked_rows, function (key, val) {
console.log($(this).attr('data-federation_id'));
});
第一行获取所有选中的复选框,然后找到这些复选框的 <tr>
父项。
然后代码遍历找到的 <tr>
个元素以提取每个 ID。
请注意,此 jQuery 不使用任何 DataTable 函数,并且独立于 DataTables 提供的功能。如果您只想获取 ID,那么这应该没问题。如果您想更改数据表的 content/behavior,那么这可能无济于事。