我在WebForm里声明一个字符串数组webstr,在javascript里面想获取这个数组:var jsstr[(webstr的长度)];
for(i=0;i<(webstr的长度);i++)
{
jsstr[i]="<%=webstr["+i+"%>";
}程序报错所无法将string转换成int形,问题应该出现在<%=webstr["+i+"%>";这条语句的i上面,但是应该怎样解决呢?谢谢各位

解决方案 »

  1.   

    这样不行,把js代码和后台代码混了
    必须要用
    http://community.csdn.net/Expert/FAQ/FAQ_Index.asp?id=209336
    里面说的方法之一
      

  2.   

    如果用第一种方法是不是可以改写成这样呢?我愿是按照你的文章作的,但是应该是我改写后的语法有问题,请你帮忙检查一下,谢谢
    <script  language="javascript">  
               //将cs中的数组传js中的数组  
               var  jsstr  =  new  Array((webstr的长度));  
               <%  
                           string  iniArr  =  null;  
                           for  (int  i=0;  i<(webstr的长度);  i++)  
                           {  
                                       iniArr  +=  "jsstr["  +  i  +  "]="  +  Webstr[i]  +  ";";  
                           }  
               %>  
               "<%=iniArr%>"
    </script>
      

  3.   

    我传递的是字符串数组,那<%iniArr%>是不是也要写成"<%=iniArr%>"?我改后还是出现错误
      

  4.   

    for循环体中的那句话不太对,还是缺一对引号,应该这样:
    iniArr  +=  "jsstr["  +  i  +  "]=\""  +  Webstr[i]  +  "\";";  
      

  5.   

    "<%=iniArr%>"这句不要再加引号了,原封不动,只要补上我楼上提到的那一对引号就行了
    <script  language="javascript">  
               //将cs中的数组传js中的数组  
               var  jsstr  =  new  Array((webstr的长度));  
               <%  
                           string  iniArr  =  null;  
                           for  (int  i=0;  i<(webstr的长度);  i++)  
                           {  
                                       iniArr += "jsstr["  +  i  +  "]=\""  +  Webstr[i]  +  "\";";
                           }  
               %>  
               <%=iniArr%>
    </script>
      

  6.   

    搞定!凡瑞,你可算我javascript的启蒙老师了,呵呵,今天第一次接触,我这人有点笨,感谢你的耐心.