jsp中 把java获取的list传给js中的数组

<%if(list!=null){
for(int j=0;j<list.size();j++)
{%>
//alert("111");
data[<%=j%>] = '<%=list.get(j)%>';
alert(data[<%=j%>]);
<%}
}%>
其中的 j 识别不了,在线等,急需!!!!!
或者,怎么把从数据库得到的list,传给js里的数组

第1个回答  推荐于2016-07-19
<script type="text/javascript">
var data = new Array();
<%
List list = new ArrayList();
list.add(0);
list.add(1);
if(list!=null){
for(int j=0;j<list.size();j++)
{%>
    //alert("111");
    data[<%=j%>] = '<%=list.get(j)%>';
    alert(data[<%=j%>]);
<%}
}%>
</script>

我这本地测试没问题,你试试

追问

我本来这样也可以,但是换了台电脑。这样就不行,总是'';有单引号网页报未结束的字符常量;没有单引号就不能识别 j

是环境的问题?那该怎么办

追答

应该是环境的问题,我这带不带单引号都没有问题...都能正常运行

本回答被提问者采纳
第2个回答  2015-01-29
data[<%=j%>] = '<%=list.get(j)%>'; 改为

data[<%=j%>] = <%=list.get(j)%>;

去掉单引号看下追问

去掉单引号,只能得到list的第一个值,从第二个值开始报未定义;但是用list.get(数字)是可以输出的

追答

;改成 ; 注意get(j) 后面有空格
或者改成
;

试一下

相似回答