猿问

jQuery不会从AJAX查询中解析我的JSON

jQuery不会从AJAX查询中解析我的JSON

我使用jQuery.ajax()解析从我的服务器返回的一些JSON数据时遇到困难

要执行我正在使用的AJAX:

$.ajax({
  url: myUrl,
  cache: false,
  dataType: "json",
  success: function(data){
    ...
  },
  error: function(e, xhr){
    ...
  }});

如果我返回一个项目数组,那么它工作正常:

[ { title: "One", key: "1" }, { title: "Two", key: "2" } ]

调用success函数并接收正确的对象。

但是,当我尝试返回单个对象时:

{ title: "One", key: "1" }

调用错误函数,xhr包含'parsererror'。我已经尝试将JSON包装在服务器上的括号中,然后再将其发送到网络中,但它没有任何区别。然而,如果我将内容粘贴到Javascript中的字符串中然后使用eval()函数,它会完美地评估它。

我有什么想法我做错了吗?

安东尼


温温酱
浏览 432回答 3
3回答

慕慕森

您的服务器是否将数据作为Content-Type发送"*/json"?如果没有,请相应地修改响应标头。"application/json"例如,发送会很好。

幕布斯7119047

JSON字符串用双引号括起来; 单引号不是有效的替代品。{"who": "Hello World"}是有效的,但这不是......{'who': 'Hello World'}虽然不是OP的问题,但认为值得注意的是其他人来到这里。
随时随地看视频慕课网APP

相关分类

JQuery
我要回答