JavaScript没有向JSON数据发出警报

JavaScript没有向JSON数据发出警报,javascript,json,Javascript,Json,下面给出的URL中的JSON数据如下所示: { "datum":[ { "id":"19", "song":"The Age of Worry", "path":"audio/age.mp3", "artist":"John Mayer", "album":"Born And Raised", "genre":"Blues-Rock", "year":"

下面给出的URL中的JSON数据如下所示:

{
   "datum":[
      {
         "id":"19",
         "song":"The Age of Worry",
         "path":"audio/age.mp3",
         "artist":"John Mayer",
         "album":"Born And Raised",
         "genre":"Blues-Rock",
         "year":"2012",
         "filename":"age",
         "extension":".mp3",
         "size":"6.1539077758789 MB ",
         "duration":"2:40",
         "downloads":"0"
      }
   ]
}
我想提醒歌曲的名字。下面的代码仅提醒id,而不提醒歌曲。我不知道这里出了什么问题


据我所知,当您想要警报json数据时,它只显示像[object object],使用console.log,需要安装firebug进行警报

据我所知,当您想要警报json数据时,它只显示像[object object],使用console.log,需要安装firebug进行警报

假设响应有效,验证来自服务器的响应的内容类型标头是否正确设置为application/json

假设响应有效,验证来自服务器的响应的内容类型标头是否正确设置为application/json

我添加了此选项。假设JSON数据如示例所示返回,则每个逻辑都工作正常。因此,问题一定出在返回JSON的PHP脚本中

以下是简化的提琴,仅用于测试您的逻辑。每个逻辑:

var jsonData = {"datum":[{"id":"19", "song":"The Age of Worry", "path":"audio/age.mp3", "artist":"John Mayer", "album":"Born And Raised", "genre":"Blues-Rock", "year":"2012", "filename":"age", "extension":".mp3", "size":"6.1539077758789 MB ", "duration":"2:40", "downloads":"0" }]};
$.each(jsonData.datum, function (i, res) {
    alert(res.song);                     
});​
我加了这个。假设JSON数据如示例所示返回,则每个逻辑都工作正常。因此,问题一定出在返回JSON的PHP脚本中

以下是简化的提琴,仅用于测试您的逻辑。每个逻辑:

var jsonData = {"datum":[{"id":"19", "song":"The Age of Worry", "path":"audio/age.mp3", "artist":"John Mayer", "album":"Born And Raised", "genre":"Blues-Rock", "year":"2012", "filename":"age", "extension":".mp3", "size":"6.1539077758789 MB ", "duration":"2:40", "downloads":"0" }]};
$.each(jsonData.datum, function (i, res) {
    alert(res.song);                     
});​


要获得更多帮助,请发布json对象的示例字符串。它可能是跨域问题或smth其他问题。请添加console.logd;美元之前。每个。。。给我们firebug控制台输出。我看不出你的代码有任何问题。检查这个我问自己为什么不使用console.log。。呵呵,谢谢。为了获得更多的帮助,请发布一个json对象的示例字符串。它可能是跨域问题或其他问题。请添加console.logd;美元之前。每个。。。给我们firebug控制台输出。我看不出你的代码有任何问题。检查这个我问自己为什么不使用console.log。。呵呵,谢谢。或者只使用Chrome中的控制台:-1,因为这并不能真正回答他的问题。他没有向java对象发出警报,只是正确输出了对象的一个属性。thx@Varon。。非常有用!顺便说一句,你错过了safari:/:@davidethell:他肯定没有提醒Java对象,没有。如果你想挑剔…或者只是使用Chrome:-1中的控制台,因为这并不能真正回答他的问题。他没有向java对象发出警报,只是正确输出了对象的一个属性。thx@Varon。。非常有用!顺便说一句,你错过了safari:/:@davidethell:他肯定没有提醒Java对象,不。如果你想挑剔的话……他使用的是一个。每个循环,其中res将是给定键/值对的值。因此,在他的示例中res.song是有效的语法。他使用了一个.each循环,其中res将是给定键/值对的值。因此,在他的例子中,res.song是有效的语法。@vinique,如果这个或另一个答案解决了您的问题,请将其标记为已接受。很乐意帮忙@vinique,如果此答案或其他答案解决了您的问题,请将其标记为已接受。很乐意帮忙!