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

Posted

技术标签:

【中文标题】如何在 JQuery 中将 json 响应读取为名称值对【英文标题】:How to read json response as name value pairs in JQuery 【发布时间】:2011-04-20 23:56:08 【问题描述】:

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

【问题讨论】:

【参考方案1】:
success: function(responseData) 
    for (var key in responseData) 
        alert(responseData[key]);
    

请务必注意,迭代属性的顺序是任意的,不应依赖。

【讨论】:

【参考方案2】:

这很简单:

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

$.each(json, function(key, value)  alert(key + "=" + value); );

【讨论】:

【参考方案3】:

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

【讨论】:

以上是关于如何在 JQuery 中将 json 响应读取为名称值对的主要内容,如果未能解决你的问题,请参考以下文章

如何在 bash 中将 json 响应转换为 yaml

在 jQuery $.ajax 中读取 Laravel JSON 响应

如何在 web 服务响应中将 json 响应作为块返回?

jQuery $.post 处理 JSON 响应

如何在 Jquery 中将 MVC 表单序列化为 JSON

我们如何在golang中将json文件读取为json对象