AJAX默默地失败了

时间:2013-09-10 20:53:21

标签: javascript jquery ajax

我遇到了一个AJAX请求问题。所有这一切都在早些时候工作,然后我在文件夹中移动了一些文件,它一定已经破坏了一些东西,但我一直无法弄清楚我的路径可能有什么问题。

发生了什么

AJAX请求似乎被忽略了,没有任何东西进入控制台或网络选项卡,responseText是“”,我在PHP的第一行放置一个从未命中的断点。它直接从$.ajax到我的错误回调中的第一行。此外,当通过直接访问页面或cron来调用此PHP代码时,它可以正常工作。

我之后有一个非常类似的调用,在同一文件夹中的另一个文件正常工作。

我尝试了什么

如前所述,我查看了PHP中的responseText,控制台输出,网络选项卡和断点(从未到过),我查看了Google和stackoverflow。如果我故意将名称更改为不存在的文件,我会立即在控制台中收到错误。

以下代码

        $.ajax({
        type: "POST",
        url: "PHP/myFile.php",
        data: '',
        success: function () {
            //Success code
        },
        error: function (xhr) {
            var response = xhr.responseText; // response is ""
            //Error code
        }
    });

有什么想法吗?

以下是文件后面的代码,它(成功)从同一文件夹中的文件中获取代码。

$.ajax({
        type: "GET",
        cache: false,
        url: "PHP/myOtherFile.php",
        dataType: 'json',
        success: function (data) {
            // Success code
        },
        error: function () {
            // Error Code
        }
    });

非常基本的AJAX调用,不确定发生了什么:/

1 个答案:

答案 0 :(得分:1)

  

在http错误上调用错误回调,但如果在JSON解析时也调用   响应失败

来自:Jquery ajax error callback

从您的工作文件中,代码dataType: 'json'我盲目地假设您正在进行某种json解析。 尝试制作" myFile.php"一个简单的echo 'x';脚本,并检查响应文本。如果你得到的东西,那么它是因为你的脚本包含JSON解析代码,但你还是没有将任何数据传递给脚本。

因此,将调用错误回调,因为脚本正在尝试JSON解析任何内容(即data: ''

我无法通过阅读你的问题描述提出任何建议,希望其他人能够明白这一点。古德勒克