
请教Javascript高手!我浪费了很多分数,还是解决不了!没这么难吧??
我在aspx文件(后台用的是C#语言)中插入了下面的JavaScript函数,<scriptlanguage="JavaScript"type="text/javascr...
我在aspx文件(后台用的是C#语言)中插入了下面的JavaScript函数,
<script language="JavaScript" type="text/javascript">
function display()
{
var array=new Array();
var length=<%=musicArrayLength%>; //musicArrayLength是后台定义的
musicArray数组的长度
<%int i=0; %>
for( var i=0; i< length ; i++)
{
array[i]="<%=musicArray[i]%>";
<%i++;%>
alert( array[i] );
}
}
这个Javascript函数的原意是:将aspx.cs中定义的musicArray数组中的若干个元素用for循环拷贝到前台的array数组中, alert( array[i])用来显示每一个拷贝的数组元素值,可是,我发现拷贝到array数组中的值都是相同的!!为什么啊??还有: <% %>表示什么意思?? <%int i=0; %>中的int i=0;是在客户端还是服务器端执行??
后台的C# 代码很简单,定义并 填充了 musicArray 数组(ArrayList对象),用musicArrayLength表示数组长度,musicArrayLength 和 musicArray 都定义为 public。 展开
<script language="JavaScript" type="text/javascript">
function display()
{
var array=new Array();
var length=<%=musicArrayLength%>; //musicArrayLength是后台定义的
musicArray数组的长度
<%int i=0; %>
for( var i=0; i< length ; i++)
{
array[i]="<%=musicArray[i]%>";
<%i++;%>
alert( array[i] );
}
}
这个Javascript函数的原意是:将aspx.cs中定义的musicArray数组中的若干个元素用for循环拷贝到前台的array数组中, alert( array[i])用来显示每一个拷贝的数组元素值,可是,我发现拷贝到array数组中的值都是相同的!!为什么啊??还有: <% %>表示什么意思?? <%int i=0; %>中的int i=0;是在客户端还是服务器端执行??
后台的C# 代码很简单,定义并 填充了 musicArray 数组(ArrayList对象),用musicArrayLength表示数组长度,musicArrayLength 和 musicArray 都定义为 public。 展开
展开全部
其实你可以直接将数组写到客户端,C#中可以使用RegisterArrayDeclaration.
这是一段测试代码:
在CS的Page_Load中:
string[] musicArray = { "1.mp3", "2.mp3", "3.mp3", "4.mp3" };//测试数组
//把数组转成用“,”分隔的形式
string arrValue = "";
for (int i = 0; i < musicArray.Length; i++) {
arrValue = arrValue + "\"" + musicArray[i] + "\",";
}
arrValue = arrValue.Substring(0,arrValue.Length-1);
//添加javascript数组声明.
Page.ClientScript.RegisterArrayDeclaration("array", arrValue);
在ASPX中,将以下代码写到form的结束标志后:
<script language="JavaScript" type="text/javascript">
for (i = 0; i < array.length; i++) {
alert(array[i]);
}
</script>
这是一段测试代码:
在CS的Page_Load中:
string[] musicArray = { "1.mp3", "2.mp3", "3.mp3", "4.mp3" };//测试数组
//把数组转成用“,”分隔的形式
string arrValue = "";
for (int i = 0; i < musicArray.Length; i++) {
arrValue = arrValue + "\"" + musicArray[i] + "\",";
}
arrValue = arrValue.Substring(0,arrValue.Length-1);
//添加javascript数组声明.
Page.ClientScript.RegisterArrayDeclaration("array", arrValue);
在ASPX中,将以下代码写到form的结束标志后:
<script language="JavaScript" type="text/javascript">
for (i = 0; i < array.length; i++) {
alert(array[i]);
}
</script>
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询