问题描述
|
我通常有28个项目,我使用了分页,并使用Ajax在3页中显示
每页有10个项目,无论我在复选框中选择了什么,它都应该在底部显示值,现在一切正常,但是我的问题是,当我在第二页中选择项目时,上一个列表消失了,当我返回第一页时它没有显示以前选择的项目。
我不知道该怎么做
请帮忙
谢谢
我用这个jQuery代码来获取检查值
function showValues() {
var page = $(\"#pagedis\").val();
var fields = $(\":input\").serializeArray();
$(\"#results_\" + page).empty();
jQuery.each(fields,function(i,field) {
$(\"#results_\" + page).append(field.value + \"<br> \");
});
}
如果我们在一页中选择3个项目,在第二页中选择4个项目,则我需要类似gmail的操作,当我返回时,选中的值永远不会改变
解决方法
您的复选框都具有相同的名称吗?如果不是,请使用相同的名称。
确保每个复选框都有唯一的value属性
附加处理程序以跟踪数组中选中的复选框
:
// global variable somewhere
var checkedBoxes = new Array();
$(\'input[name=theNameYouDefinedAbove]\').click(function(event){
checkedBoxes[$(this).val()] = $(this).is(\':checked\');
});
现在,当您分页时,只需执行此操作
:
$(\'input[name=theNameYouDefinedAbove]\').each(function(index,checkbox){
if (checkedBoxes[$(checkbox).val()]) {
// NOTE: choose ONLY ONE!
// for jQuery 1.6+
$(checkbox).prop(\'checked\',true);
// for all jQuery
$(checkbox).attr(\'checked\',\'checked\');
}
});