<% ArrayList<AgentDelegate> a = (ArrayList<AgentDelegate>)menuMgr.getNameMenu();
//这里获取到arraylist a的内容  
%>
<script language="javascript">
<!--
function dspl(msg,bgcolor,dtop,delft){
this.msg=msg;
this.bgcolor=bgcolor;
this.dtop=dtop;
this.dleft=delft;
}
var link=new Array();
for(int i=0;i<<%=a.size()%>;i++)
{
link[i]=new dspl('<%a.get(i).getIP()%>','lightyellow',60,500)
}//我想在这里把ArrayList数组中的每条信息放在link[i]数组中,但是报错,有没有什么办法。
-->
</script>

解决方案 »

  1.   

    <%
    for (int i = 0; i < a.size(); i ++) {
      out.print("link[i] = \"" + a.getIP() + "\";");
    }
    %>
      

  2.   

    for(int i=0;i<<%=a.size()%>;i++)
    {
        out.println("link[i]=new dspl('"+a.get(i).getIP()+"','lightyellow',60,500)");
    }
      

  3.   

    <%
    for (int i = 0; i < a.size(); i ++) {
      out.print("link[" + i + "] = \"" + a.getIP() + "\";");
    }
    %>
      

  4.   

    你瞎说吧,我要放到link[]数组中的,楼上不要瞎说
      

  5.   

    <%
    Array link = new Array();
    for(int i=0;i<a.size();i++)
    {
       link.add(a.get(i));
    }
    %>
      

  6.   

    有必要在javascript中迭代吗?用JSP中的<c:forEach>标签不是很好的吗?
      

  7.   

    变通一下,动态生成js.
    用out.println()
      

  8.   

    把jsp和js混在一起会有这样的问题我的经验,jsp一般情况下执行结果都是文本String,javascript是这个结果的一部分,因此你可以在jsp里面动态生成js Array的元素,但是js已经和jsp没有关系了
      

  9.   

    你在js中用jsp把arrayList循环一下不就行了吗?
      

  10.   

    link[i]=new dspl('<%a.get(i).getIP()%>','lightyellow',60,500)
    ------------------------------------------------------------
    link[i]=new dspl('<%=a.get(i).getIP()%>','lightyellow',60,500)
    少个等号