我想在我的JQuery代码中读取json响应作为名称和值对。这是我从我的java代码返回的示例JSON响应:
String jsonResponse = "{"name1":"value1", "name2:value2"};
在我的JQuery中,如果我写jsonResponse.name1
,我将得到"value1"
的值。这是我的JQuery代码
$.ajax({
type: 'POST',
dataType:'json',
url: 'http://localhost:8080/calculate',
data: request,
success: function(responseData) {
alert(responseData.name1);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
//TODO
}
});
这里我想从jsonResponse中读取"name1"
,而不是在JQuery中读取硬编码。通过响应获取每个名称和值来循环。有什么建议吗?
答案 0 :(得分:12)
success: function(responseData) {
for (var key in responseData) {
alert(responseData[key]);
}
}
重要的是要注意,迭代属性的顺序是任意的,不应该依赖它。
答案 1 :(得分:7)
这很容易:
json = {"key1": "value1", "key2": "value2" };
$.each(json, function(key, value) { alert(key + "=" + value); });
答案 2 :(得分:5)
您可以使用responseData['name1']
。容易。