【问题标题】:Retrieve JSON array with $.getJSON and return values使用 $.getJSON 检索 JSON 数组并返回值
【发布时间】:2014-04-29 09:59:56
【问题描述】:

我有一个像这样的 json 对象。

[{
    "bannerName": "HotWire",
    "imgLocation": "img/logo/weh.jpg",
    "profiles":["1000000390","1000000391"],
    "locations":["1","250"]
},
{

    "bannerName": "The Grill",
    "imgLocation": "img/logo/weh123.jpg",
    "profiles":["1000000390","1000000391"],
    "locations":["1","250"]
}];

保存在banners.json中

我正在尝试检索此信息以使用引导程序创建横幅。

我正在使用以下内容从 json 文件中检索信息。

$.getJSON('banners/banners.json', function(data){

  $.each(data, function(index, obj){
    $.each(obj, function(key, value){
      console.log(value);
    });
  });

});

但是,控制台中没有记录任何内容。本质上,我需要将循环中的信息作为变量检索,这样我就可以将它们嵌入到 HTML 中,但我似乎无法使用这段代码返回任何内容。

【问题讨论】:

  • 您的代码在小提琴中运行良好:jsfiddle.net/eyxzX您检查控制台是否有错误?
  • 检查返回的data 的值,因为我认为这就是问题所在。它工作正常...jsfiddle.net/ArchersFiddle/5kVm2
  • .json文件中数据结构的末尾有分号吗?
  • 您的浏览器控制台有任何错误吗?能不能在success回调前加个日志语句,看看是否调用了success回调...还加个failhandler看看ajax请求是否失败

标签: javascript jquery json twitter-bootstrap


【解决方案1】:

如果有的话,尝试删除json末尾的分号

[{
    "bannerName": "HotWire",
    "imgLocation": "img/logo/weh.jpg",
    "profiles":["1000000390","1000000391"],
    "locations":["1","250"]
},
{

    "bannerName": "The Grill",
    "imgLocation": "img/logo/weh123.jpg",
    "profiles":["1000000390","1000000391"],
    "locations":["1","250"]
}]

你可以在jsonlint查看你的json是否正确

$.getJSON('banners/banners.json', function(data){
 // try to debug what you actually getting
  console.log(data);
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-02-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-09
    • 2011-07-13
    • 2021-12-20
    • 1970-01-01
    相关资源
    最近更新 更多