Javascript 获得;“未定义”;当我用js打印json数组时
我想解析json数组,它来自json.jsp,但当我访问Javascript 获得;“未定义”;当我用js打印json数组时,javascript,jquery,json,jsp,Javascript,Jquery,Json,Jsp,我想解析json数组,它来自json.jsp,但当我访问parse.js时,它会显示undefined 这里是parse.js $(document).ready(function() { $('#login').click(function(event) { $.get('json.jsp', { }, function(responseText) { var myJ
parse.js
时,它会显示undefined
这里是parse.js
$(document).ready(function() {
$('#login').click(function(event) {
$.get('json.jsp', {
}, function(responseText) {
var myJSONObject1 = responseText;
var myJSONObject = JSON.parse(myJSONObject1);
var len = myJSONObject.length;
var out = "";
for (var i = 0; i < len; i++) {
var student = myJSONObject[i];
out += "<li>"+student.ircEvent + "<li>" + student.method+"<li>"+student.regex;
}
document.getElementById("ajaxResponse").innerHTML = out;
});
});
});
当我访问parse.js文件时,它显示undefined
任何想法……只要使用$.ajax并将
数据类型设置为json
。不需要解析任何东西。jQuery为您完成了这项工作
json.jsp的原始输出是什么?[{“RAM”:ram@gmail.com},{“拉维”:ravi@gmail.com},{“Ragu”:ragu@gmail.com“}]您好,首先非常感谢您的回复…我尝试了您上面发送的代码…当我包含您的代码时,页面上没有显示任何内容…请再给我一些代码提示。。真的,我现在非常需要那个片段……请帮我破解这个……嗯,好吧。。。您要解析的JSON输出是什么?您希望在哪个元素中显示它?我修改了脚本,使其接受您在问题的第二条注释中发布的JSON,并将其附加到ID为ajaxResponse
的HTML节点。我创建了一个..来显示JSON输出来自JSP…似乎一切正常…但我没有得到任何输出..好吧,您得到任何返回数据了吗?如果是的话,它看起来像什么?我根据您最初的JSON字符串为JavaScript建模。为了动态显示数据,您必须具备一些关于如何使用JavaScript创建HTML节点的基本知识。
<%
response.setContentType("plain/text");
User user = new User("RAM","ram@gmail.com");
User user1 = new User("Ravi","ravi@gmail.com");
User user2 = new User("Raghu","raghu@gmail.com");
List list = new ArrayList();
list.add(user);list.add(user1);list.add(user2);
String json = new Gson().toJson(list);
response.getWriter().write(json);
%>
jQuery(document).ready(function($) {
$.ajax({
url: 'json.jsp',
type: 'get',
dataType: 'json',
success: function(data) {
if (data.length) {
var ajaxResponse = document.createElement('table'),
tbody = document.createElement('tbody');
for (var i in data) {
if (data.hasOwnProperty(i)) {
var tr = document.createElement('tr'),
key = document.createElement('td'),
keyText = document.createTextNode(i),
value = document.createElement('td'),
valueText = document.createTextNode(data[i]);
key.appendChild(keyText);
tr.appendChild(key);
value.appendChild(valueText);
tr.appendChild(value);
tbody.appendChild(tr);
}
}
ajaxResponse.appendChild(tbody);
$("#ajaxResponse").append(ajaxResponse);
}
else alert("No data returned!");
}
});
});