Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将复选框值存储在会话存储中_Javascript_Jquery_Ajax_Checkbox_Session Storage - Fatal编程技术网

Javascript 将复选框值存储在会话存储中

Javascript 将复选框值存储在会话存储中,javascript,jquery,ajax,checkbox,session-storage,Javascript,Jquery,Ajax,Checkbox,Session Storage,有人能帮我吗?我正在尝试使用window.sessionStorage存储复选框的状态。当用户从第1页转到第2页,然后单击“上一步”按钮转到第1页时,我希望选中用户在转到第2页之前选中的所有复选框 此链接在页面底部有一个脚本,该脚本在进入本地存储或会话存储模式后即可工作 .好的,也许这就是您使用会话存储的方式 下面是一个链接,其中介绍了localstorage和sessionstorage 如果没有,请发布一段完整的代码(如果可能的话),这样我可以调试您的代码…谢谢大家。我自己解决了 $

有人能帮我吗?我正在尝试使用
window.sessionStorage
存储复选框的状态。当用户从第1页转到第2页,然后单击“上一步”按钮转到第1页时,我希望选中用户在转到第2页之前选中的所有复选框

此链接在页面底部有一个脚本,该脚本在进入本地存储或会话存储模式后即可工作

.

好的,也许这就是您使用会话存储的方式

下面是一个链接,其中介绍了localstorage和sessionstorage


如果没有,请发布一段完整的代码(如果可能的话),这样我可以调试您的代码…

谢谢大家。我自己解决了

   $('#id of the form').submit(function (ev) {
  sessionStorage.setItem('checkBoxesResult', $("#id of the form").serialize()); 
  });

if(sessionStorage.getItem("checkBoxesResult")) {

        var printVal = sessionStorage.getItem("checkBoxesResult");
        var checkBoxArray = [];
        if (printVal != null) {
        checkBoxArray = printVal.split("&");
        for( var i=0; i < checkBoxArray.length; i++ ) {

            var nv  = checkBoxArray[i].split("=")
            n = decodeURIComponent(nv[0]),
            v = nv.length > 1 ? decodeURIComponent(nv[1]) : null;

            selectedChkBox(n,v);
        }
    }
    }


   function selectedChkBox( chkbox, value ) {
      $("[name="+chkbox+"]").each( function() {   
     if ( $(this).val() ==  value )
        $(this).attr('checked', true);
     else
        if ( $(this).attr('checked') == true)
            $(this).attr('checked', false);
    });
     }
$(“#表单id”).submit(函数(ev){
setItem('checkBoxesResult',$(“#表单id”).serialize();
});
if(sessionStorage.getItem(“checkBoxesResult”)){
var printVal=sessionStorage.getItem(“checkBoxesResult”);
var checkBoxArray=[];
如果(printVal!=null){
checkBoxArray=printVal.split(&);
对于(var i=0;i1?解码组件(nv[1]):空;
选择chkbox(n,v);
}
}
}
功能选择chkbox(chkbox,值){
$(“[name=“+chkbox+”])。每个(函数(){
if($(this).val()==值)
$(this.attr('checked',true);
其他的
if($(this).attr('checked')==true)
$(this.attr('checked',false);
});
}

不使用本地存储有什么原因吗?是的,因为使用本地存储…它存储所有浏览器中的数据我想在浏览器/选项卡关闭后立即清除会话存储OK,我们可以尝试使用.setItem()或我发布的链接上解释的其他内容,否则应该是代码中的内容,那将被搜索。。。如果可能的话,给我一个JSFiddle,这样我可以更好地调试它。这不会回答问题,甚至不会尝试回答它,只不过是一个
链接回答
错误的参考,请参阅。。。使用是一个更好的参考。甜心,你已经认识到微软是唯一一个没有参与HTML5运动的人,甚至整个IE都没有用常见的功能进行过糟糕的更新吗?但MDN比任何其他网站都好?!?:-)只是一个重复浪费的暗示,贴在没有人真正阅读的网站上并不是一个好建议