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

我想在我的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中进行硬编码。 通过循环获取每个名称和值的响应。 有什么建议?

 success: function(responseData) { for (var key in responseData) { alert(responseData[key]); } } 

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

这很容易:

 json = {"key1": "value1", "key2": "value2" }; $.each(json, function(key, value) { alert(key + "=" + value); }); 

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