Javascript 如何从ASP:NET向jQuery传递数组?
我使用的是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" +
<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