2012-02-12 46 views
0

我想从我的按钮中单击服务器端调用一个JavaScript函数,并将ArrayList,字符串数组或列表作为参数传递给该函数。 然后,我需要遍历这些集合的所有元素,并对数据执行一些操作。 你能告诉我的JavaScript代码来访问这些元素 考虑下面的结构,我在JavaScript的如何从javascript访问数组列表,字符串数组或列表?

Function ABC(_Arraylist/List/String Array){ 

//I would like to perform some action on the collections data here. 
} 

感谢。

+0

参见[JSON](http://www.json.org/js.html) – Shai 2012-02-12 09:07:02

回答

3

服务器:

// this could also be a string[] if you prefer 
var array = new List<string> { "foo", "bar", "baz" }; 
var serializer = new JavaScriptSerializer(); 
var script = string.Format("foo({0});", serializer.Serialize(array)); 
ClientScript.RegisterStartupScript(GetType(), "call", script, true); 

客户:

function foo(array) { 
    for (var i = 0; i < array.length; i++) { 
     alert(array[i]); 
    } 
} 
+0

有什么参考类新增加调用“JavaScriptSerializer”功能? – Pankaj 2012-02-12 09:15:26

+0

@PankajGarg,它是:http://msdn.microsoft.com/en-us/library/system.web.script.serialization.javascriptserializer.aspx。命名空间:'System.Web.Script.Serialization',程序集:'System.Web.Extensions.dll'。 – 2012-02-12 09:16:51

+0

用于JavaScript Serializer的+1。如果你试图在没有序列化的情况下传递参数,它会在Javascript控制台上给出非法字符运行时错误 – Pankaj 2012-02-12 09:35:11