localStorage数据存储

localStorage的常用写法以及使用例子(使用场景:a页面跳转到b页面,但是a页面数据没提交,再从b页面返回a页面,

此时a页面要回显之前未提交已经输入的数据,可以用此技术实现)

localStorage.a =1;//设置a为"1"  
localStorage["a"]="test";//设置a为"test",覆盖上面的值  
localStorage.setItem("b","b");//设置b为"b"  
var val1 = localStorage["a"];//获取a的值  
var val2 = localStorage.a;//获取a的值  
var val3 = localStorage.getItem("b");//获取b的值  
localStorage.removeItem("c");//清除c的值
//1.先清空之前的缓存,在保存最新的内容
var storageData = localStorage.storageData;
if(storageData!= null && storageData !=""){
    localStorage.clear();
}
// 2.缓存表单的数据
localStorage.storageData=decodeURIComponent($("form").serialize(),true); 

// 3.取得缓存中的数据,并赋值给form表单控件
if(localStorage.storageData != null && localStorage.storageData != ''){
    var str = localStorage.storageData.split("&");
    $.each(str,function(i,n){
        var str1 = n.split("=");
        if($("input[name=\""+str1[0]+"\"]")[0]){
            if($("input[name=\""+str1[0]+"\"]").val()== null || $("input[name=\""+str1[0]+"\"]").val() ==""){
                
                $("input[name=\""+str1[0]+"\"]").val(str1[1]);
            }
            
        }else if($("textarea[name=\""+str1[0]+"\"]")[0]){
            if($("textarea[name=\""+str1[0]+"\"]").val() == null || $("textarea[name=\""+str1[0]+"\"]").val() == ""){
                
                $("textarea[name=\""+str1[0]+"\"]").val(str1[1]);
            }
            
        }else if($("select[name=\""+str1[0]+"\"]")[0]){
                if($("select[name=\""+str1[0]+"\"]").val() == null || $("select[name=\""+str1[0]+"\"]").val() == ""){
                
                $("select[name=\""+str1[0]+"\"]").val(str1[1]);
            }
        }
    });
}

 

posted @ 2021-03-04 17:34  程序员小明1024  阅读(152)  评论(0编辑  收藏  举报