我在forEach循环内创建了一个JSONArray(在java scriplet中创建)。据我所知,这部分工作正常(但是各种论坛都说您无法遍历JSONArray,所以我只是猜测它是正确的。)
然后,我尝试在javascript中访问同一JSONArray(与scriplet处于同一jsp),但是出现“无法解析区域列表”错误(这意味着无法在javascript中看到该数组)。
<%
ArrayList zones= new ArrayList();
zones.add(pageContext.getAttribute("zone"));
for(int i=0; i<zones.size(); i++)
out.println(zones.get(i));
// Convert object arrayList to String arrayList
List<String> strings = new ArrayList(zones.size());
for (Object object : zones) {
strings.add(object != null ? object.toString() : null);
}
for(int i=0; i<strings.size(); i++)
out.println(strings.get(i));
JSONArray zoneslist = new JSONArray();
zoneslist.addAll(strings);
%>
/tr>
</c:forEach>
<script type="text/javascript">
var thesezones = <%= zoneslist.toJSONString() %>;
我在做什么错(我是否需要getParameter或http include或其他东西才能将JSONArray恢复回jsp?)。
假设我们解决了这个问题,我如何(使用javascript)迭代/提取原始字符串,然后将其输入到chart.js中?
问候 拉尔夫