Как получить значение данных из выбранных строк данных - PullRequest
0 голосов
/ 29 марта 2020

Я использую jQuery Datatables с выбором строки с помощью флажков и Выбрать расширение.

Мне нужно получить значение данных из строк флажков. Я использовал этот код, но я не могу получить данные:

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);
});

Это код 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>&nbsp;</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>&nbsp;</td>
</tr>

</tbody>
</table>

1 Ответ

1 голос
/ 29 марта 2020

Вы можете использовать следующие jQuery для получения идентификаторов федерации для выбранных флажков:

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> для извлечения каждого идентификатора.

Обратите внимание, что этот jQuery не использует никаких функций DataTable и не зависит от функциональности, предоставляемой DataTables. , Если вы просто хотите получить идентификаторы, тогда это должно быть хорошо. Если вы хотите изменить содержание / поведение вашей таблицы данных, то это, вероятно, не поможет.

...