页面上存在javascript变量
本文关键字:javascript 变量 存在 | 更新日期: 2023-09-27 17:58:04
我正在页面后面的代码中使用c#.net创建javascript变量,并使用page.ClientScript.RegisterClientScriptBlock()将该变量放在页面上。因此,该变量在页面上可用,我可以使用jquery在客户端读取(获取)该变量值。
我正在做以下事情:
C# :
category_columnNames += "var vertical_" + catItem.VerticalID + "_columnNames=['Tools','PersonID','Topic','Category','Cost','Company']";
Page.ClientScript.RegisterClientScriptBlock(Page.GetType(), "LoadColumnNames", category_columnNames, true);
通过这样做,我们假设:var vertical_1_columnNames=['Tools','PersonID','Topic','Category','Cost','Company'];
在第页上。现在我想首先检查页面上是否存在variable(vertical_1_columnNames)
。若是,那个么我需要在客户端获取它的值(['Tools','PersonID','Topic','Category','Cost','Company']
)。我在客户端做以下事情:
客户端:
function ViewCartDirectLeadsGridInit(gridID) {
alert(gridID);//vertical_1_CategoryGrid
var vertical = gridID.toString().split('_')[1];
var columnNames = "vertical_" + vertical + "_columnNames";
alert(columnNames); // vertical_1_columnNames
alert(typeof(columnNames));// string
alert(eval(columnNames)); // ['Tools','PersonID','Topic','Category','Cost','Company']
if (!window.columnNames) // This is not working.I want to check for existence of var vertical_1_columnNames
{
alert("success");
return false;
}
else{
// do something;
}
}
有什么建议吗?
谢谢,
window.columnNames
将搜索名为"columnNames"
而非"vertical_" + vertical + "_columnNames"
的变量。使用window[columnNames]
。