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 帮我写一个c++工程
  • ¥30 Eclipse官网打不开,官网首页进不去,显示无法访问此页面,求解决方法
  • ¥15 关于smbclient 库的使用
  • ¥15 微信小程序协议怎么写
  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教