如何在jquery数据表中获取多个复选框选中的值
Posted
技术标签:
【中文标题】如何在jquery数据表中获取多个复选框选中的值【英文标题】:How to get multiple checkbox checked value in jquery datatable 【发布时间】:2019-07-06 22:08:04 【问题描述】:单击按钮时,我想从datatables
中获取多行选定值。从我下面的代码中,我只得到第一行选择的值。
function AssignVendor()
var table = $(assignVendor).DataTable();
var data = table
.row( selected: true )
.data();
<table id="assignVender" class="mp myTable table table-striped table-bordered" cellspacing="0" ui-jq="dataTable" ui-options="dataTableOpt">
<thead>
<tr>
<th class="select-checkbox"></th>
<th>MP Name</th>
<th>MP Code</th>
<th>Vendor Name</th>
<th>Vendor Code</th>
<th>From Date</th>
<th>To Date</th>
<th>Remarks</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="mp in MaintenanceZones">
<td></td>
<td>mp.MP_NAME</td>
<td>mp.MP_CODE</td>
<td>mp.REMARK</td>
<td>mp.VENDORNAME</td>
<td>mp.VENDORCODE</td>
<td>mp.VFRDATE</td>
<td>mp.VTODATE</td>
</tr>
</tbody>
</table>
请帮忙
【问题讨论】:
应该是table.rows().data()
- datatables.net/reference/api/rows().data() 从所有行中选择值。您的代码 table.row().data()
正在选择单行。
【参考方案1】:
试试这个
$('#assignVender').on( 'click', 'tr', function ()
$(this).toggleClass('selected');
);
function AssignVendor()
var table = $(assignVendor).DataTable();
var data = table.rows('.selected').data();
参考:https://datatables.net/examples/api/select_row.html
要循环遍历数据,请使用以下命令:
data = table.rows('.selected').data();
data.each( function ( value, index )
console.log( 'Data in index: '+index+' is: '+value );
);
【讨论】:
当没有选中复选框时data = table.rows('.selected').data();
data.length
应该返回 0 ,你可以设置一个条件
如果长度为 0 则显示警报,否则运行循环以上是关于如何在jquery数据表中获取多个复选框选中的值的主要内容,如果未能解决你的问题,请参考以下文章