gpt4 book ai didi

asp.net-mvc - 在 ASP.NET MVC 应用程序中分页时保持 Telerik MVC 网格中的复选框状态

转载 作者:行者123 更新时间:2023-12-04 22:36:54 27 4
gpt4 key购买 nike

我正在使用 Telerik MVC Grid,其中一列是复选框。如果我选择复选框,然后转到第 2 页,然后返回第 1 页,则所有复选框都消失了。这当然是 HTTP 的工作方式。现在,我将所有选中的复选框放在隐藏字段中,但是由于网格会进行某种回发,所以下次我的隐藏字段会被清除。

最佳答案

如果您使用客户端数据绑定(bind),您可以使用下面的 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();
});
}
});
});

数据绑定(bind)后恢复复选框状态:
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);
});
}

我的博客上提供了更详细的解释:
http://blog.cdeutsch.com/2011/02/preserve-telerik-mvc-grid-checkboxes.html

关于asp.net-mvc - 在 ASP.NET MVC 应用程序中分页时保持 Telerik MVC 网格中的复选框状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4761323/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com