如何将数组中的值从 asp.net 更改为 javascript
本文关键字:net asp javascript 数组 | 更新日期: 2023-09-27 18:31:04
我正在 javascript 的数组arr
中加载字符串 myvalue
(全局字符串)的值
function hello()
{
alert("hi");
var arr=[<% myvalue %>];
alert(arr);
}
protected void ListBox1_SelectedIndexChanged(object sender, EventArgs e)
{
myvalue="1234";
Page.ClientScript.RegisterStartupScript(GetType(), "whatiskey", "hello();", true);
}
并在listbox1.item
选择和调用方法上更新myvalue
,该方法更新arr
的值,但javascript arr
不加载新值
你必须加上双引号并写成:
var arr=["<%=myvalue %>"];
或更好的方法:
var arr= new Array();
arr.push("<%=myvalue %>");
将
ListBox1注册为部分回发元素也可能是原因之一。
您是否能够调试,正在调用ListBox1_SelectedIndexChanged
。
您需要像下面这样的东西来阻止多次注册,这可能是不调用hello()的原因之一。使用 F12 调查呈现的 HTML。
// Check to see if the client script is already registered.
if (!Page.ClientScript.IsClientScriptBlockRegistered(cstype, csname2))
{
Page.ClientScript.RegisterStartupScript(GetType(), "aNewKey", "hello();", true);
}