如何从 DataTables 中的选定数据中获取数据

Posted

技术标签:

【中文标题】如何从 DataTables 中的选定数据中获取数据【英文标题】:How to get data from a selected data from the DataTables 【发布时间】:2021-10-20 00:21:24 【问题描述】:

我正在尝试从 DataTable 中获取选定的数据,但我无法检索数据,但是我能够检索行索引号。任何人都可以帮助我获取选定的行数据。我将提供一个工作小提琴以便于工作。

$(document).ready(function() 
   var table = $('#example').DataTable(
      'ajax': 'https://gyrocode.github.io/files/jquery-datatables/arrays_id.json',
      'columnDefs': [
         
            'targets': 0,
            'checkboxes': 
               'selectRow': true
            
         
      ],
      'select': 
         'style': 'multi'
      ,
      'order': [[1, 'asc']]
   );
   
   // Handle form submission event 
   $('#frm-example').on('submit', function(e)
      var form = this;
      
      var rows_selected = table.column(0).checkboxes.selected();

      // Iterate over all selected checkboxes
      $.each(rows_selected, function(index, rowId)
         // Create a hidden element 
         $(form).append(
             $('<input>')
                .attr('type', 'hidden')
                .attr('name', 'id[]')
                .val(rowId)
         );
      );

      // FOR DEMONSTRATION ONLY
      // The code below is not needed in production
      
      // Output form data to a console     
      $('#example-console-rows').text(rows_selected.join(","));
      
      // Output form data to a console     
      $('#example-console-form').text($(form).serialize());
       
      // Remove added elements
      $('input[name="id\[\]"]', form).remove();
       
      // Prevent actual form submission
      e.preventDefault();
   );   
);

https://jsfiddle.net/cvinhar/82csLoy5/

【问题讨论】:

嗨。什么时候获取选中的数据?如何?当您选中该框和提交按钮时?提交时所选行的数据?请用例子解释一下,我很乐意看看:) 嗨。当我们勾选复选框并单击提交时,我想获取名称和位置数据而不是 rowId。 【参考方案1】:

您可以在提交时简单地使用:

let selectedValues = table.rows(  selected: true  ).data();

然后循环遍历你的值。

【讨论】:

这是一个很好的解决方案。我想添加一个注释,需要加载选择扩展才能使其工作。附加信息:datatables.net/extensions/select 您好,请问如何循环获取数据? @Harvin Chandran 当然可以,但是为什么循环遍历数组会出现问题? 你已经在你的代码中使用你的 $.each 来做这件事,困难的部分是获取数据......

以上是关于如何从 DataTables 中的选定数据中获取数据的主要内容,如果未能解决你的问题,请参考以下文章

jQuery DataTables 获取选定的行值

如何将第二个(隐藏)值添加到 datatables.net 中的单元格?

如何从 jQuery dataTables 中获取分页信息

DataTables 仅打印选定的选项

如何从 db2 中的选定日期获取接下来 24 小时的所有数据?

如何从Django数据库中的不同表中获取选定的数据并将json返回给Web客户端