c# - 使用javascript循环遍历c#数组中的值

标签 c# javascript asp.net

好的,我已经在 C# 中创建了一个数组,并希望在 javascript for 循环中访问这些值。这是我的全局 C# 变量:

protected int count;
protected string[] arr = new string[20];

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

这是我理想的 javascript 代码:

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

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

最佳答案

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

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

如果您想将数组中的数据发送到浏览器以便它可以在某些 JavaScript 中使用它,您需要 serialize数组。

像这样:

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

关于c# - 使用javascript循环遍历c#数组中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7155107/

相关文章:

c# - MiniProfiler 结果 UI 显示空名称,因为使用了 SqlServerStorage

c# - 像字典一样的东西,但可以存储多个值?

c# - .net 应用程序的 SQLite 部署

c# - 无需数据库即可永久存储数据

asp.net - 将其他 ObjectSet 从单独的项目附加到 ObjectContext

javascript - 如何在 Javascript 中转义 "comma"

javascript - 尝试发送组合击键 (Shift RightArrow) 或触发事件 JQ 2.0.3

Javascript - Canvas - 在先前填充的颜色上覆盖透明的 png

c# - 如何解决 Blazor 服务器端项目的 Visual Studio 中的错误消息?

c# - sqldatasource update 命令不起作用并且没有 SQL 错误