我正在使用kendo UI Web Grid来显示一些数据。 由于我正在处理大量数据,所以我决定使用网格虚拟滚动功能,这非常有用。
现在,我需要添加一个非数据绑定列,该列将填充一个复选框,以便我可以检查/取消选中网格中的记录以进行进一步处理。
我只需使用模板即可添加复选框列:
columns: [
{
field: "",
width:'3%',
title: " ",
hidden: false,
template: "<input type=\"checkbox\" />"
},
我遇到的问题是,当启用虚拟滚动时,如果我选中其中一个复选框,然后滚动网格,当我回到已检查的记录时,不再检查它。
如何使用虚拟滚动并仍然选中复选框?
由于
答案 0 :(得分:2)
当您传递与pageSize一样多的记录时,始终会重新创建行。但是,如果您真的将该复选框绑定到基础模型,则更改将保持不变,一旦您返回同一页面,您将看到项目已选中。
使复选框的一种方法反映了对模型的更改,如下所示:
grid.tbody.on('click',':checkbox',function(e){
var row = $(this).closest('tr');
grid.dataItem(row).set('isAdmin',$(this).is(':checked'));
})
其中isAdmin是复选框绑定的字段的名称。
Here是实例。