JQuery解析JSON数组

16 浏览
0 Comments

JQuery解析JSON数组

我有一个如下所示的JSON输出:\n

["City1","City2","City3"]

\n我想获取每个城市的名称,该如何做?\n

$.getJSON("url_with_json_here",function(json){
});

\n编辑:\n

$.getJSON('url_here', function(data){
    $.each(data, function (index, value) {
      $('#results').append(''+value+'');
        console.log(value);
    });
});

\n上述方法似乎无法工作,没有任何值被输出。

0
0 Comments

在上述代码中,我们使用了jQuery的parseJSON函数来解析JSON数组。然后,我们使用$.each函数遍历解析后的对象,并将需要的值存储在一个新的数组中。

问题的出现主要是因为没有正确使用parseJSON函数对JSON数组进行解析。解决方法是正确使用parseJSON函数,并使用$.each函数来遍历解析后的对象。

以下是修复后的代码:

var dataArray = [];
var obj = jQuery.parseJSON(yourInput);
$.each(obj, function (index, value) {
    dataArray.push([value["yourID"].toString(), value["yourValue"] ]);
});

通过这种方式,我们可以正确地解析和处理JSON数组。这可以帮助我们在使用JavaScript和jQuery时更好地处理和操作数据。

0
0 Comments

问题的出现原因是需要将一个JSON数组解析成一个JavaScript数组。解决方法是使用jQuery的parseJSON方法进行解析。

首先,可以使用以下代码将JSON字符串解析为JavaScript数组:

var json = '["City1","City2","City3"]';
var arr = $.parseJSON(json);

然后,arr就是一个包含城市名称的数组。

如果在使用$.getJSON方法获取JSON数据时,可以将上述代码放在成功获取JSON数据后的回调函数中。

如果通过AJAX获取JSON数据,需要指定数据类型为JSON。这样数据将被自动解析,并且成功回调函数将得到一个对象或数组,而不是一个字符串。如果使用getJSON方法,数据类型将自动设置为JSON,因此不需要解析结果。

以上方法可以很好地处理JSON数组,并且在与已接受的答案结合使用时效果更好。

0
0 Comments

JQuery解析JSON数组的问题是因为使用了getJSON()方法获取JSON数据后,需要对数据进行解析,才能得到一个简单的JavaScript数组。解决方法可以使用for循环或$.each()方法对数组进行遍历。

使用for循环的示例代码如下:

$.getJSON("url_with_json_here", function(data){
    for (var i = 0, len = data.length; i < len; i++) {
        console.log(data[i]);
    }
});

使用$.each()方法的示例代码如下:

$.getJSON("url_with_json_here", function(data){
    $.each(data, function (index, value) {
        console.log(value);
    });
});

为了查看输出结果,可以在控制台中检查输出信息(在Chrome中使用Chrome开发者工具、在Firefox中使用Firebug、在IE中使用IE控制台)。

此外,还需要确保JSON数据正确到达。可以使用console.log(data);来检查JSON数据。同时,还需要确保返回的JSON数据类型为application/json,并且JSON字符串格式正确,避免出现解析错误。

在某些情况下,根据使用的jQuery版本,自动JSON解析可能会在某些情况下静默失败,返回一个字符串。因此,确保从服务器端正确返回数据,并使用正确的application/json内容类型。此外,还要确保返回的JSON字符串格式正确,避免出现解析错误。

0