Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/86.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 “我怎么能?”;“保存”;变量客户端,以便在其他java脚本事件中使用它?_Javascript_Html_Kendo Ui - Fatal编程技术网

Javascript “我怎么能?”;“保存”;变量客户端,以便在其他java脚本事件中使用它?

Javascript “我怎么能?”;“保存”;变量客户端,以便在其他java脚本事件中使用它?,javascript,html,kendo-ui,Javascript,Html,Kendo Ui,这是一个.html页面 剑道自动完成具有选择功能: select: function(e) { valid = true; if (e.item == null) { return; } var DataItem = this.dataItem(e.item.index())

这是一个.html页面

剑道自动完成具有选择功能:

select: function(e)
            {
                valid = true;
                if (e.item == null)
                {
                    return;
                }
                var DataItem = this.dataItem(e.item.index());
                nameId = DataItem.NameId;
                personId = DataItem.PersonId;
            }
基本上,上面所做的就是为我捕获一些变量值

这很好用

问题是,我想在以后的一些其他函数和事件中使用变量
nameId
personId

“保存”这些变量的正确方法是什么


这些变量稍后将用作POST请求的参数。

在客户端本地存储:

localStorage.setItem("nameId",nameId);
localStorage.setItem("personId",personId);
检索它们的值:

nameId=localStorage.getItem("nameId");
personId=localStorage.getItem("personId");

您可以使用全局变量(尽管此方法只能作为最后手段)

否则,javascript将假定变量的作用域只持续函数的长度。如果希望作用域扩展到函数之外,请在函数之外声明它们,如下所示:

var date_item = null
function doSomething(){
    date_item = b
}


function doSomethingElse(){
    alert(data_item)
}
要使用全局变量,请不要在变量声明前使用前缀“var”

var date_item = null // local
date_item = null // global

您可以使用js设置cookie。这里有一个例子:你真的在引用W3傻瓜的话吗?只能通过
getItem
setItem
访问本地存储。所有其他方法都可能有效,但不能保证。