【问题标题】:JSON undefined error using JQuery使用 JQuery 的 JSON 未定义错误
【发布时间】:2011-12-09 22:40:19
【问题描述】:

尝试读取以下 JSON 字符串时,我的 Javascript 警报未定义:

[
    {
        "number_messages":"3"
    },
    {
        "message1":"abc"
    },
    {
        "message2":"c"
    },
    {
        "message3":"a"
    }
]

我正在使用 AJAX 来获取这个字符串(它正确地进入了低谷。

resp=jQuery.parseJSON(response);
alert( resp.number_messages );

我的 ajax 调用是:

$.ajax({  
type: 'POST',  
url: 'backend2.php',  
data: dataString,
success: submitFinished,
dataType: 'json'
});  

这会提醒“未定义”,蜻蜓没有错误显示(它就像萤火虫,但用于歌剧)。

我对整个 JSON JQuery 事情还是很陌生,所以这很可能。事情真的很简单,但我似乎无法弄清楚。我已经搜索答案并编辑了我的代码一个多小时,但仍然无法正常工作。

【问题讨论】:

标签: javascript jquery json


【解决方案1】:

试试这个:

alert( resp[0].number_messages );

【讨论】:

  • 你明白为什么会这样吧?这是因为您有一个结构数组(因此您必须使用适当的索引来处理其他每个元素)。
  • 是的,现在一切都清楚了。一直在尝试 .each 因为我认为它可能是一个数组但没有让它工作。
【解决方案2】:

jQuery自动将json数据解析成对象,不需要jQuery.parseJSON(response)

$.ajax({
  "url":"page.php",
  "dataType":"json",
  "success":function(data){
    alert(data[0].number_messages);
  }
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多