从另一个javascript文件中获取localStorage变量的值

MrJ*_*rJR 5 html javascript jquery local-storage

在javascript中使用localstorage时遇到问题.我有两个javascript文件和一个多页html文件.我将变量的值设置为存储在home.js类的本地存储中,然后我想在editCase.js类中获取相同变量的值.这可能吗?这里的目标是在html文件中使用变量的几个位置.

home.js:

var _NSCaseId;
var nsId;
$("#listOfCases li").click(function(){
            nsId = $(this).attr('id');
            LocalStorage.save(_NSCaseId, nsId);
            alert(nsId);
        });
Run Code Online (Sandbox Code Playgroud)

如您所见,该值是listview项的id.此工作正常,警报每次都显示正确的值.

然后我想在editCase.js文件中使用相同的变量:

var id = LocalStorage.get(_NSCaseId);
    alert(id);
Run Code Online (Sandbox Code Playgroud)

但我在logcat中收到错误,说在editCase.js中未定义_NSCaseId

有什么建议?

tym*_*eJV 22

这应该根本不起作用.它localStorage(JS非常区分大小写),为了保存项目,您使用setItem,将语法更改为:

//You would not define var _NSCaseId and save the var, you save a string key
localStorage.setItem('_NSCaseId', nsId); //set
Run Code Online (Sandbox Code Playgroud)

得到

localStorage.getItem('_NSCaseId');
Run Code Online (Sandbox Code Playgroud)

请参阅DOM存储:https://developer.mozilla.org/en-US/docs/Web/Guide/API/DOM/Storage