Php AJAX成功回调JSON未定义

Php AJAX成功回调JSON未定义,php,javascript,ajax,json,Php,Javascript,Ajax,Json,以下是从我的php返回的JSON: { "approvalSource":[ {"role_name":"role_1","approval_req_id":"3"}, {"role_name":"role_2","approval_req_id":"2"} ], "doc_source":[ {"document_name":"te

以下是从我的php返回的JSON:

{
   "approvalSource":[
       {"role_name":"role_1","approval_req_id":"3"},                                                   
       {"role_name":"role_2","approval_req_id":"2"}
    ],
   "doc_source":[
       {"document_name":"testDoc","doc_req_id":"2"}
    ]
}

为什么发出警报(JSON.stringify(data.doc_source))返回未定义?

您访问的
文档源不正确。这将是访问该属性的正确方式

alert(JSON.stringify(data["doc_source"])); 警报(JSON.stringify(数据[“doc_source”]);
查看用于请求和解析JSON的代码会很有用,但有一些想法:

我经常发现这个问题是由JSON的HTTP请求的Content-Type头引起的。对于某些库,它需要类似于“application/json”


另一种可能是您正在使用请求返回的字符串,而不是先解析它。

恐怕您的问题出在其他地方。如果json如您所说的那样,那么这就完美了。更可能是您请求json的方式不正确,您能展示您正在使用的完整代码吗?谢谢大家,我的问题是我忘记在ajax调用中显式定义数据类型:“json”……这让我发疯了!如果你愿意花时间把你的回答作为答案贴出来,我会给每个人一个信用卡replies@A.O.也请检查以下内容。。您访问密钥的方式不正确。希望这能有所帮助:)@woofmeow是的,你是对的,这就是为什么我给了你一票。然而,我需要JSON格式的数据,以便您可以使用点符号(以及方括号)访问doc_源代码。我没有注意到这一点,因为我正忙于回复。虽然您知道A.O,但我一直在尝试提供帮助,并且考虑到您没有将数据类型添加到AJAX请求中,您的库可能会退回到内容类型头(正如我所说的)。所以你降低了这个反应有点苛刻!你也没有提供答案,只是“一些想法”。Woofmeow实际上提供了一个有效的答案,以及一些对原始帖子发表评论的人。我会删除我的否决票,这样你就可以建立一些代表lol。当然,如果你想这么做,你必须对你的答案进行编辑。是的,但是Woofmeow错了!您可以通过自己的方式访问属性的值。此外,我只能在没有代码的情况下提供“一些想法”。我不想那么糟。我只是指出你有点破坏性,因为我只是想帮忙。