栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

将C#ASP.NET数组传递给Javascript数组

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

将C#ASP.NET数组传递给Javascript数组

您可以使用Clientscript.RegisterStartUpscript将javascript注入Page_Load的页面中。

这是MSDN参考的链接:http :
//msdn.microsoft.com/zh-
cn/library/asz8zsxy.aspx

这是Page_Load中的代码:

  List<string> tempString = new List<string>();  tempString.Add("Hello");  tempString.Add("World");  StringBuilder sb = new StringBuilder();  sb.Append("<script>");  sb.Append("var testArray = new Array;");  foreach(string str in tempString)  {    sb.Append("testArray.push('" + str + "');");  }  sb.Append("</script>");  Clientscript.RegisterStartupscript(this.GetType(), "TestArrayscript", sb.ToString());

注意:使用StringBuilder生成脚本字符串可能会很长。

以下是在使用注入数组之前对其进行检查的Javascript:

if (testArray){  // do something with testArray}

这里有两个问题:

  1. 有人认为这对C#注入Java脚本是一种干扰

  2. 我们必须在全局上下文中声明数组

如果不能接受,另一种方法是让C#代码将数组保存到View
State,然后让Javascript使用PageMethods(或Web服务)回调到服务器以将该View
State对象作为数组。但是我认为对于这样的事情可能会过大。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/596937.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号