0

这是一个 .html 页面。

Kendo Auto Complete 具有 SELECT 功能:

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 请求的参数。

4

2 回答 2

1

在客户端本地存储:

localStorage.setItem("nameId",nameId);
localStorage.setItem("personId",personId);

检索它们的值:

nameId=localStorage.getItem("nameId");
personId=localStorage.getItem("personId");
于 2013-08-29T23:54:20.527 回答
0

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

否则,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
于 2013-08-30T01:58:23.660 回答