Javascript “如何保留复选框”;勾选“;在数据表中,上下移动行
我有一个dataTable,其中每一行都有一个复选框和上下按钮来移动行。但如果我选中一个复选框,然后移动该行,复选框将变为未选中状态 如何防止此事件并保持复选框处于选中状态Javascript “如何保留复选框”;勾选“;在数据表中,上下移动行,javascript,jquery,html,datatables,Javascript,Jquery,Html,Datatables,我有一个dataTable,其中每一行都有一个复选框和上下按钮来移动行。但如果我选中一个复选框,然后移动该行,复选框将变为未选中状态 如何防止此事件并保持复选框处于选中状态 { name: 'name', data: 'name', title: 'Name', searchable: true, sortable: false, render: function (data, type, full, meta) { if (type === 'display') {
{ name: 'name',
data: 'name',
title: 'Name',
searchable: true,
sortable: false,
render: function (data, type, full, meta) {
if (type === 'display') {
var $span = $('<span></span>');
$('<input type="checkbox">').appendTo($span);
return $span.html();
}
return data;
}
},
{name:'name',
数据:“名称”,
标题:“姓名”,
可搜索:正确,
可排序:false,
呈现:函数(数据、类型、完整、元){
如果(类型==‘显示’){
变量$span=$('');
$('')。附录($span);
返回$span.html();
}
返回数据;
}
},
这是我的代码:您可以将状态保存在变量中,绘制表格后可以选中并更新复选框的状态 拨弄
不能replicate@brk问题是什么?还要为表添加HTML代码。@Rusty的整个代码都在JSFIDLE上。
function moveRow(row, direction) {
var index = table.row(row).index();
var order = -1;
if (direction === 'down') {
order = 1;
}
var data1 = table.row(index).data();
data1.order += order;
var data1Checked = $(table.row(index).node()).find('input[type=checkbox]').prop('checked');
var data2 = table.row(index + order).data();
data2.order += -order;
var data2Checked = $(table.row(index + order).node()).find('input[type=checkbox]').prop('checked');
table.row(index).data(data2);
table.row(index + order).data(data1);
table.page(0).draw(false);
$(table.row(index + order).node()).find('input[type=checkbox]').prop('checked', data1Checked);
$(table.row(index).node()).find('input[type=checkbox]').prop('checked', data2Checked)
}