Javascript 如何从ASP:NET向jQuery传递数组?

Javascript 如何从ASP:NET向jQuery传递数组?,javascript,jquery,asp.net,arrays,Javascript,Jquery,Asp.net,Arrays,我使用的是ASP.NET,有一个字符串数组,我想把这个数组传递给jQuery。我该怎么做 我试过以下方法,但不起作用。我已经记录了我的阵列,它已满,因此阵列不是问题所在 <script> var imagesSrc = '<%=images%>'; for (var i = 0; i < imagesSrc.length; i++) { document.getElementById("image" +

我使用的是ASP.NET,有一个字符串数组,我想把这个数组传递给jQuery。我该怎么做

我试过以下方法,但不起作用。我已经记录了我的阵列,它已满,因此阵列不是问题所在

    <script>
        var imagesSrc = '<%=images%>';
        for (var i = 0; i < imagesSrc.length; i++) {
            document.getElementById("image" + ((i + 1).toString())).src = "images/" + imagesSrc[i] + ".jpg";
        }
    </script>

尝试用JavaScript硬编码列表字符串。如果它仍然中断,问题不在于数组,而在于其他方面


例如,在元素存在之前,您可能正在执行getElementById。。在这种情况下,需要将此代码包装在“on page ready”事件中。或者,页面上方可能有一个javascript错误,导致停止执行。

我认为您无法将数组直接从codebehind传递到有效的javascript。将数组分配给分隔字符串,然后使用
split()
在javascript中创建一个数组怎么样

大概是这样的:

代码隐藏:

public partial class TestPage: System.Web.UI.Page
{
    public string MyCSV { get; set; }

    protected void Page_Load(object sender, EventArgs e)
    {    
         string csv = "";
         foreach (var itm in myarray) //array created elsewhere
         {
             csv = csv + loc + ",";
         }
         MyCSV = csv.Substring(0, csv.Length - 1); //trailing comma
    }
}
<script type="text/javascript">
  var csvstring = '<%= MyCSV %>';
  var csvArray = csvstring.split(',');
  //do stuff with array
</script>
aspx:

public partial class TestPage: System.Web.UI.Page
{
    public string MyCSV { get; set; }

    protected void Page_Load(object sender, EventArgs e)
    {    
         string csv = "";
         foreach (var itm in myarray) //array created elsewhere
         {
             csv = csv + loc + ",";
         }
         MyCSV = csv.Substring(0, csv.Length - 1); //trailing comma
    }
}
<script type="text/javascript">
  var csvstring = '<%= MyCSV %>';
  var csvArray = csvstring.split(',');
  //do stuff with array
</script>

var csvstring='';
var csvArray=csvstring.split(',');
//用数组做东西

在images服务器端变量中使用逗号分隔的值。例如,要使用的图像名称为image1、image2…imageN,然后使用

受保护的字符串images=“image1,image2…imageN”//c#代码隐藏

在javascript代码中,简单地使用split函数分割逗号分隔的值,如

 <script>
        var imagesSrc = '<%=images%>'.split(",");
        for (var i = 0; i < imagesSrc.length; i++) {
            document.getElementById("image" + ((i + 1).toString())).src = "images/" + imagesSrc[i] + ".jpg";
        }
    </script>

var imagesSrc=''.split('','';
对于(变量i=0;i
你准备好出发了。
享受编码,如果它能解决您的问题,请将其标记为答案。

我的脚本位于页面底部,因此img标记已经创建。嗯,这使得js更有可能在该点之前遇到错误并停止。控制台中没有报告js错误?我尝试了对列表进行硬编码,列表工作正常。我认为var-imagesrc='';这个问题,我检查.cs文件和图像数组是否有效,如果它是一个['a','b']格式的数组,您不希望它周围有
'
。你想要的是
imagesrc=
,它给了我一个语法错误。你得到了一个特定的错误吗?没有,只是断开了链接img