使用javascript循环来自c#数组的值

Aar*_*len 3 javascript c# asp.net

好的,我在c#中创建了一个数组,想要在javascript for循环中访问这些值.这是我的全局c#变量:

protected int count;
protected string[] arr = new string[20];
Run Code Online (Sandbox Code Playgroud)

从那里我将字符串值添加到数组中,比如说,Page_Load()事件.

这是我理想的javascript代码:

var count = <%= count %>;
for (var i = 0; i < count; i++) 
{
document.write(<%= arr[i] %>);
}
Run Code Online (Sandbox Code Playgroud)

现在,如果我只是使用arr [0],它会弹出arr [0]的正确信息,所以我知道我的那部分是正确的,但有没有办法在里面使用那个javascript变量"i" <%=%>标签?

Rex*_*x M 5

代码的ASP.NET部分在服务器上执行.JavaScript在浏览器中执行.服务器只是将JavaScript视为文本,它没有意义且无法使用.只有当浏览器收到页面并解释JS时才会执行.

请记住,服务器和客户端PC是由网络连接的两个不同系统.如果要在系统B上处理来自系统A的数据,则需要将数据发送到B.

如果要将数组中的数据发送到浏览器以便它可以在某些JavaScript中使用它,则需要序列化数组.

像这样的东西:

var myArray = <% = new JavaScriptSerializer().Serialize(serverSideArray) %>;
for(var i = 0; i < myArray.length; i++) {
    document.write(myArray[i]);
}
Run Code Online (Sandbox Code Playgroud)