我在从JSON检索数据时遇到了困难。当我单击按钮时,它将触发调用函数,调用函数将调用json.jsp
文件以从数组中检索数据。现在我无法检索数据。这是我的JavaScript文件;
var callback;
function call(uid, pw) {
callback = true;
$.getJSON("json.jsp" + "?uid=" + uid + "&rdm=" + Math.random(), function (data) {
$.each(data.menulist, function (key, val) {
$("#cont").append("<div>" + val + "</div>");
});
callback = false;
});
}
以下是我的jsp文件;
String uid=request.getParameter("uid")==null?"xxx":request.getParameter("uid");
if (uid.equalsIgnoreCase("admin")){
{"menulist":[{"menu":"menu1"},{"menu":"menu2"},{"menu":"menu3"}]}
} else if (uid.equalsIgnoreCase("user")){
{"menulist":[{"menu":"menu1"},{"menu":"menu2"}]}
} else {
{"menu":"Menu"}
}
答案 0 :(得分:1)
最后我得到了这样的话;
$("#cont").append("<div>" + data.menulist[i].menu + "</div>");
答案 1 :(得分:0)
首先,您的JSP代码看起来不正确。您应该使用&lt; %%&gt;附上JSP scriptlet。如下:
<%String uid=request.getParameter("uid")==null?"xxx":request.getParameter("uid");
if (uid.equalsIgnoreCase("admin")){ %>
{"menulist":[{"menu":"menu1"},{"menu":"menu2"},{"menu":"menu3"}]}
<%} else if (uid.equalsIgnoreCase("user")){ %>
{"menulist":[{"menu":"menu1"},{"menu":"menu2"}]}
<%} else { %>
{"menu":"Menu"}
<%}%>
您是否尝试直接访问URL并检查JSP是否输出了正确的JSON内容。
http://localhost:8080/yourapp/json.jsp?uid=admin&rdm=1