【问题标题】:JSP array to JavascriptJSP 数组到 Javascript
【发布时间】:2012-11-19 14:45:53
【问题描述】:

我需要从 jsp 传递下面的数组 [aLocations]。

<script type="text/javascript">
  var aLocations = new Array();
  var aTitles = new Array();
  var aDetails = new Array();

  aLocations = ['keswick,cumbria,uk','grasmere,cumbria,uk','ambleside,cumbria,uk'];

</script>

如果我这样尝试,它不起作用:

<%
ArrayList<String> myArr = new ArrayList<String>();
        myArr.add("keswick,cumbria,uk");
        myArr.add("grasmere,cumbria,uk");
        myArr.add("ambleside,cumbria,uk");
%>

<script type="text/javascript">
  var aLocations = new Array();
  var aTitles = new Array();
  var aDetails = new Array();

  aLocations = <%=myArr%>;

</script>

从 JSP 传递的最佳方法是什么?

【问题讨论】:

    标签: arrays


    【解决方案1】:

    你需要一个图书馆。 例如使用http://code.google.com/p/google-gson/,您可以:

    Gson gson = new Gson();
    aLocations = <%=gson.toJson(myArr)%>;
    

    或查看 https://sites.google.com/site/gson/gson-user-guide 获取文档。

    如果没有库,您需要手动创建类似 ["imtem1","item2",..,"itemn"] 的结构,其中包含迭代、字符串连接、转义处理等。请参阅Populating JavaScript Array from JSP List

    【讨论】:

    • 感谢您的快速响应。没有那个库就不能实现吗?
    • 我按照你所说的进行了尝试,但我收到了这个错误:“JSONArray 类型的方法 fromObject(ArrayList) 是未定义的”
    猜你喜欢
    • 2016-05-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多