如何在JQuery中读取json响应作为名称值对

jgg*_*jgg 7 jquery json getjson

我想在我的JQuery代码中读取json响应作为名称和值对.这是我从我的java代码返回的示例JSON响应:

String jsonResponse = "{"name1":"value1", "name2:value2"};
Run Code Online (Sandbox Code Playgroud)

在我的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  
    }
});
Run Code Online (Sandbox Code Playgroud)

在这里,我想"name1"从jsonResponse中读取而不是在JQuery中进行硬编码.通过响应获取每个名称和值来循环.有什么建议?

Dar*_*rov 12

success: function(responseData) {
    for (var key in responseData) {
        alert(responseData[key]);
    }
}
Run Code Online (Sandbox Code Playgroud)

重要的是要注意,迭代属性的顺序是任意的,不应该依赖它.


Arn*_* F. 7

这很容易:

json = {"key1": "value1", "key2": "value2" };

$.each(json, function(key, value) { alert(key + "=" + value); });
Run Code Online (Sandbox Code Playgroud)


Jac*_*kin 5

你可以使用responseData['name1'].简单.