0

我需要在 javascript 中创建一个数组,数组的元素应该来自服务器端。

为此,我所做的是,在 servlet 中,

String[] valuesArray = {"val1","val2","val3"};
request.setAttribute("valuesArray",valuesArray);

在 Jsp/javaScript 中: var arrayObj = new Array(${'valuesArray'});

但是,这不起作用.. 最终,arrayObj 应该包含 {"val1","val2","val3"} 作为元素。有人可以建议我哪里出错了或者让我知道如何处理这个要求吗?

提前致谢。

4

1 回答 1

0

不幸的是,我还没有找到更简单的方法来做到这一点。我一直都是这样——

<script type="text/javascript">
   var arrayOb = new Array();
   <%
      String[] list = (String[])request.getAttribute("valuesArray");
      for(int count=0; count <list.length; count++) {
   %>
         arrayOb[<%= count %>]='<%= list[count] %>';//dont miss the single quotes here
   <% } %>
</script>

密切注意所有引号和 scriplet 标签。

您还可以在此处使用 jsp for loop 或 c:for 代替 scriplet。

于 2012-06-11T07:09:16.573 回答