使用复选框进行选择。单击复选框时,将选中该行:
select: {
style: 'multi',
selector: ':checkbox'
}
我想将选定的行保存到数据库中,我是通过使用选中的复选框的ID来完成的。当我加载带有复选框的页面时,我将选中的复选框类别设置为:
$('input:checked').each(function() {
var $row = $(this).closest('tr');
$row.addClass('selected');
});
当页面被加载时,dataTables不会在美学上将其确认为选择。该行突出显示但是当我尝试使用诸如下载到excel按钮之类的功能(仅下载所选行)时,它没有找到要下载的任何选定行。好像我只应用了CSS样式而不是它背后的相应功能。当我取消选中已加载的复选框时,该行不会返回到未选中的状态,它会保持高亮显示,就像我刚刚选中它一样。
{
extend: 'excel',
text: 'Download Excel',
exportOptions: {
columns: [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],
modifier: {
selected: true
}
}
}
如何加载带有复选框的页面并让dataTables将其识别为美学以外的其他选项?
重新创建: 单击任何复选框以选择行,下载excel - works 单击按钮重新加载 - 重新加载选中的行,单击下载excel,没有下载任何内容。 Untick行突出显示,无法识别为unselect。
答案 0 :(得分:0)
原来我错过了select()功能。只需检索复选框的行并对其调用select():
$('input:checked').each(function() {
var $row = $(this).closest('tr');
table.row($row).select();
});