joh*_*doe 4 asp.net-mvc grid telerik
我正在使用Telerik MVC Grid,其中一列是复选框.如果我选中复选框然后转到第2页然后返回第1页,则所有复选框都消失了.这当然是HTTP的工作方式.现在,我将所有选中的复选框放在隐藏字段中,但由于网格执行某种回发,因此下次清除隐藏字段.
cde*_*sch 11
如果您正在使用客户端数据绑定,则可以使用下面的javascript/jquery来维护复选框状态.
保持复选框状态:
var selectedIds = [];
$(document).ready(function () {
//wire up checkboxes.
$('#YOUR_GRID_ID :checkbox').live('change', function (e) {
var $check = $(this);
console.log($check);
if ($check.is(':checked')) {
//add id to selectedIds.
selectedIds.push($check.val());
}
else {
//remove id from selectedIds.
selectedIds = $.grep(selectedIds, function (item, index) {
return item != $check.val();
});
}
});
});
Run Code Online (Sandbox Code Playgroud)
数据绑定后恢复复选框状态:
function onDataBound(e) {
//restore selected checkboxes.
$('#YOUR_GRID_ID :checkbox').each(function () {
//set checked based on if current checkbox's value is in selectedIds.
$(this).attr('checked', jQuery.inArray($(this).val(), selectedIds) > -1);
});
}
Run Code Online (Sandbox Code Playgroud)
我的博客上提供了更详细的解释:http: //blog.cdeutsch.com/2011/02/preserve-telerik-mvc-grid-checkboxes.html
| 归档时间: |
|
| 查看次数: |
6676 次 |
| 最近记录: |