如何在C#上制作的javascript上循环数组?

mar*_*zzz 3 .net javascript c# asp.net

我有这个JS功能:

var i = 0;
for (i = 0; i < myArray.length; i++) {
    alert(myArray[i]);
}
Run Code Online (Sandbox Code Playgroud)

但是myArray[]使用c#在服务器端创建:

ArrayList myArray = new ArrayList();

protected void Page_Load(object sender, EventArgs e)
{
    foreach (MyObject myobject in MyObjects)
    {
        myArray.Add(myobject.Description);
    }
}
Run Code Online (Sandbox Code Playgroud)

那么,我怎样才能将C#数组"传递"给Javascript?或者我需要在服务器端打印整个javascript代码并将其发送到服务器?

Pra*_*ana 5

您可以使用RegisterArrayDeclaration(arrayName, arrayValue)方法从服务器端填充javascript数组.

在Cs文件中

RegisterArrayDeclaration("FavoriteNumbers", "1")
RegisterArrayDeclaration("FavoriteNumbers", "2")
RegisterArrayDeclaration("FavoriteNumbers", "3")
Run Code Online (Sandbox Code Playgroud)

在javascript中

<script language="javascript">
<!--
   var FavoriteNumbers =  new Array(1, 2, 3);
      // -->
</script>
Run Code Online (Sandbox Code Playgroud)