我有data
[
{
id: 1,
name: 'first',
desc: 'mini desc'
},
{
id: 2,
name: 'second',
desc: 'mini desc'
}
]
如果我用这个数据创建数据表,我得到这个
+----+--------+-------------+ + ID + Name + Description + +----+--------+-------------+ + 1 + first + mini desc + +----+--------+-------------+ + 2 + second + mini desc + +----+------+---------------+
但我想要这样的结果
+---+----+--------+-------------+ + * + ID + Name + Description + +---+----+--------+-------------+ + * + 1 + first + mini desc + +---+----+--------+-------------+ + * + 2 + second + mini desc + +---+----+--------+-------------+ * - checkbox input
我知道,我可以用替换列的数据来做,但我想保存所有列
createdRow: function (row, data, index) {
$('td', row).eq(0).html('<input type="checkbox">')
}
如何在没有替换数据列的情况下执行此操作?感谢。
答案 0 :(得分:0)
您可以使用mRender
定义中的aoColums
功能来实现此目的:
var oTable = $('#myDataTable').dataTable({
"data": dataset,
"bProcessing": true,
"aoColumns": [{
"mData": 'id',
"sWidth": "15px",
"mRender": function(cell_data, type, full) {
if (type === 'display') {
return '<input id="check_' + cell_data + '" type="checkbox">';
}
return cell_data;
}
}, {
"mData": 'id',
}, {
"mData": 'name'
}, {
"mData": 'desc'
}]
})
这样,数据(在这种情况下为id)将保持不变并可以进行排序,但会显示为ID="check_###"
的复选框。
请注意,这对dataTables 1.10有效,旧版本需要稍微不同的语法。此外,我没有找到此Plunker所需的所有CSS文件。