Response.Write呵呵.string[] a = new string[]{"a","b","c","d","e","f"};Response.Write("<script>var a = '");
Response.Write(String.Join(",",a));
Response.Write("';\n");
Response.Write("var b = a.split(',');");
Response.Write("alert(b.join();</script>");应该还有其它方法,顶顶看.
Response.Write(String.Join(",",a));
Response.Write("';\n");
Response.Write("var b = a.split(',');");
Response.Write("alert(b.join();</script>");应该还有其它方法,顶顶看.
数组的话,维数越多越麻烦些,
一维来说,如果是数值,直接[protect]string nums = Ary.Join(","),然后在ASPX中写
var ary = <%= "[" + nums + "]" %>;
如果是字符串,你就要先将C#数组中每一项的"\"",替换为"\\\"",然后Join就一致了。
因为我有一个ASP.NET里面用的Ajax.dll里面的JS和服务器通信就是用的Web.config配置的,不过我不记得了.......抱歉.
比如我在cs中定义了两个数组
public static int[] x={12014898,12013898,12012898,12011898,12010898,12015898,12016898,12017898,12018898,12019898};
public static int[] y={3025847,3026847,3027847,3028847,3029847,3024847,3023847,3022847,3011847,3020847};
怎么传递过去???
直接 var i = new Array();
i = <%x%>;
var j = new Array();
j = <%y%>;这样????
public string[] a;
然后再pag_load事件中给它赋值,
a = new string[2];
a[0]="1";
最后在前台js中就可以调用了;
<script language=javascript>
alert(a[0]);
</script>
<script language=javascript>
alert('<%=a[0]%>');
</script>
public static int[] y={3025847,3026847,3027847,3028847,3029847,3024847,3023847,3022847,3011847,3020847};
怎么传递过去???
直接 var i = <%= "[" + x.Join(",") + "]" %>;
var j = <%= "[" + y.Join(",") + "]" %>;
解决方法:
将x转为字符串数组。
public static string[] ConvertFrom( int[] x )
{
string[] sa = new string[x.Length];
for( int i = 0; i < x.Length; i++ )
{
sa[i] = x[i].ToString();
}
return sa;
}
alert( i );
看看是不是你传过去所有内容先。