dongque20030402 2015-02-12 05:29
浏览 139
已采纳

jQuery .ajax调用返回JSON ParseError甚至认为JSON似乎是正确的?

I'm getting a ParseError even though my JSON validates on jsonlint.com.

Here is the jQuery code:

$.ajax({
    url: path,
    type: 'GET',
    data: {},
    cache: false,
    dataType: 'json',
    contentType: 'application/json; charset=utf-8',                  
    success: function (data) {
        var a = 'breakpoint here doesn't activate';
    },
    error: function (x, y, z) {
        var b = 'code execution stops at a breakpoint here.';
    }
});

Here is the PHP code that is being called:

function getAllAnswersToHitViaAjax($theJobName) {
    $testData[0] = 'testing123';
    $encodedData = json_encode($testData);
    echo $encodedData;
    return;
}

This comes back to a breakpoint set in the error: function of my .ajax call. Parameter Y is set to "parseerror", and x.responseText =

["testing123"] 

I've been looking into this for hours so far. I've looked at many relevant StackOverflow posts, but none have solutions that work in this case.

How can I get a success response from this .ajax call?

Thanks very much in advance to all for any info.

  • 写回答

6条回答 默认 最新

  • dongxi5505 2015-02-12 06:15
    关注

    There's nothing visibly wrong with your code, and it works fine when I try it on my local machine. However, your comment above is a big clue:

    I just looked at the z param in the Safari console, and found this:"undefined is not a function (evaluating 'JSON.parse(a+"")')" How could that be happening?

    It could happen if some code somewhere uses "JSON" as a global variable name, hiding the built-in window.JSON object.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

悬赏问题

  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?
  • ¥15 matlab(相关搜索:紧聚焦)
  • ¥15 基于51单片机的厨房煤气泄露检测报警系统设计
  • ¥15 路易威登官网 里边的参数逆向
  • ¥15 Arduino无法同时连接多个hx711模块,如何解决?
  • ¥50 需求一个up主付费课程
  • ¥20 模型在y分布之外的数据上预测能力不好如何解决
  • ¥15 processing提取音乐节奏