【发布时间】:2014-03-23 23:35:06
【问题描述】:
我有以下示例地图数组列表。首先,我如何使用 javascript 从纯 html 中访问这个数组列表?其次,我如何遍历这个列表?
<%@page import="org.json.simple.JSONObject"%>
<%@page import="org.json.simple.JSONArray"%>
<%
JSONObject json = new JSONObject();
JSONArray list = new JSONArray();
JSONObject course1,course2,course3,course4,course5;
course1 = new JSONObject();
course1.put("code", "ME101");
course1.put("desc", "Marine Engineering 101");
course1.put("sched", "June 1 - August 30, 2014");
course1.put("rsvd", "56");
course1.put("crssched", "cme101s1");
list.add(course1);
course2 = new JSONObject();
course2.put("code", "ME102");
course2.put("desc", "Marine Engineering 102");
course2.put("sched", "September 1 - November 31, 2014");
course2.put("rsvd", "25");
course2.put("crssched", "cme102s1");
list.add(course2);
course3 = new JSONObject();
course3.put("code", "CS101");
course3.put("desc", "Certificate on Seamanship 101");
course3.put("sched", "June 1 - June 30, 2014");
course3.put("rsvd", "36");
course3.put("crssched", "ccs101s1");
list.add(course3);
course4 = new JSONObject();
course4.put("code", "ME201");
course4.put("desc", "Marine Engineering 201");
course4.put("sched", "June 15 - July 16, 2014");
course4.put("rsvd", "65");
course4.put("crssched", "cme201s1");
list.add(course4);
course5 = new JSONObject();
course5.put("code", "ME202");
course5.put("desc", "Marine Engineering 202");
course5.put("sched", "July 1 - August 30, 2014");
course5.put("rsvd", "15");
course5.put("crssched", "cme202s1");
list.add(course5);
json.put("Courses", list);
response.setContentType("application/json");
response.getWriter().write(json.toString());
场景是我在网络服务器中有纯 html 文件,我从另一台服务器上的 jsp 文件获取数据,我需要使用 javascript 或 jquery 在表格中显示到 html 文件。
有什么想法吗?
编辑
根据 user13500 的建议,我查看了 JSON 并更新了上面的示例数据。测试它写在页面上,它确实打印出键值对。
我现在如何“公开” json 对象并从另一个 html 页面访问它?
【问题讨论】:
-
List<Map<String, String>> list不是 Javascript。 -
不,不是。这是来自 jsp 的“样本”数据。
-
@JNewbie:还请注意,从您更新的代码中,该代码将服务于一个对象,该对象包含一个包含对象的数组,而不是一个包含对象的数组。并且:当您发送“application/json”标头时,ajax 请求的返回将 不是 是一个字符串,而是一个对象。 (所以 Javascript 中没有
JSON.parse(reply)。) -
如果你想要数组说
list.toString()而不是json.put("Courses", list); and json.toString() -
在javascript中你可以添加
if (typeof responseData === "string") { responseData = JSON.parse(responseData); }
标签: javascript jquery html jsp arraylist