数据控件在翻页后记住之前checkbox里面选中的项

本文介绍了一种在数据翻页后记住checkbox选中状态的解决方案。通过在checkbox点击事件中保存选中项的value到隐藏控件,并在页面加载或翻页后检查隐藏控件中的value,来恢复checkbox的状态。使用了jQuery,主要涉及onCheckedBox和LoadExtcute两个JavaScript函数,分别处理checkbox的点击事件和页面加载后的复选框状态恢复。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

解决方案:在点击checkbox的时候把 它的value保存在隐藏控件中,翻页之后判断checkbox的value是否在被保存的隐藏控件中,如果有的话,选中当前控件

 

注意引用jQuery

  1,checkbox 的onclick事件函数:onCheckedBox(this), hdIdValue是隐藏控件的id

 function onCheckedBox(obj) {
            var ValueList = $("#hdIdValue").val();
            obj.checked = obj.checked;
            if (ValueList == null || typeof (ValueList) == "undefined") {
                ValueList = "";
            }
            if (obj.checked) {
                if (ValueList == "") {
                    ValueList += obj.value;
                }
                else {
                    ValueList += "," + obj.value;
                }
            }
            else {
                var vs = ValueList.split(',');
                for (var i = 0; i < ValueList.length; i++) {
                    if (vs[0] == obj.value) {
                        ValueList = ValueList.replace(obj.value, "");
                    }
                    else if (vs[i] == obj.value) {
                    ValueList = ValueList.replace("," + obj.value, "");
                    }
                }
            }
            $("#hdIdValue").val(ValueList);
        }

 

2,页面登录进来或者翻页之后执行的函数LoadExtcute(form1)--这个添加在页面之外(/html) <script type="text/javascript">LoadExtcute(form1);</script> js代码会被自动执行

 

 function LoadExtcute(form) {
            var h = $("#hdIdValue").val();
           // var v = document.getElementById("hdIdValue").value;
            for (var i = 0; i < form.elements.length; i++) {
                var e = form.elements[i];
                if (e.type == "checkbox" && v.indexOf(e.value) > -1) {
                    //indexOf 方法返回一个整数值,指出 String 对象内子字符串的开始位置。如果没有找到子字符串,则返回 -1。
                    e.checked = true;
                }
            }
        }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值