繁体   English   中英

如何使用jQuery解析JSON

[英]How to parse JSON using jQuery

我是JSON和jQuery的新手。 我有一个来自url的JSON文件,格式如下:

{
    "united":[
        {"Atlanta","California","Alabama"}
    ]

    "canada":[
        {"Ontario","British Columbia"},
    ]
}

我想要做的是当用户从列表中选择一个国家/地区时,我只想解析特定于该国家/地区的数组。

到目前为止我所拥有的是:

function getUrl(country) {
    alert(urlBase + countrylist);
    $.getJSON(urlBase + countrylist, function(data){
       $.each(data, function (index, value) {
           alert(value);
       });
    });
}

值的警报未被触发,因此它似乎没有进入每个语句。

您的JSON似乎无效。 我认为JSON的期望输出是:

{
    "united":[
        "Atlanta","California","Alabama"
    ], //this comma is new

    "canada":[
        "Ontario","British Columbia" //a comma was removed from here
    ]
}

以下是使用此结构的演示: http//jsfiddle.net/9sU65/ (观看您的控制台以查看其工作情况)

注意我删除了方括号内的花括号。 现在,这将创建一个格式正确的城市阵列。 另请注意,必须在对象的第一个和第二个键之间放置逗号。

正确的对象表示法采用以下格式:

{ key1 : 'val-1', key2 : 'val-2' }

如果你有:

{ key1 , key2 }

那你真的只想创建一个数组,它使用略有不同的表示法:

[ key1 , key2 ]

顺便说一句,这是我在使用你的JSON时遇到的错误(在Chrome 20中):

Uncaught SyntaxError: Unexpected token , 

有很多,但你总能找到一个JSON验证器,看看JSON是否有效。 无论输出采用何种格式,每当我使用新数据源时,我都会这样做。这是一个很好的JSON验证器示例: http//jsonformatter.curiousconcept.com/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM