当前位置: 首页 > 知识库问答 >
问题:

为什么Ajax返回“错误”但在Firefox中运行“成功”?

司马晋
2023-03-14
    $.ajax({
        type: "POST",
        url: "test.php",
        data: 'action='+action+'&workOrderID='+value+'&wid='+wid+'&eid='+eid+'&lastName='+lastName+'&firstName='+firstName+'&finalComment='+comment,
        cache: false,
        complete: function(data) {
            alert("Work Order Updated");
            console.log("success");
            console.log(data);
        },
        error: function(xhr, ajaxOptions, thrownError) {
            alert("Work Order NOT Updated");
            console.log("error");
            console.log(xhr);
            console.log(ajaxOptions);
            console.log(thrownError);
        }
    });

大家好,

这就是我的两难处境:在Chrome、Edge和Internet Explorer上,AJAX调用只返回成功,运行以下查询,一切都很好。但是,在Firefox中,AJAX调用返回时控制台日志中有一个错误,最终第二次被触发(不是有意的)以返回成功,从而开始查询等。。。警报发出“错误”信号。

我正试图从最终用户的角度解决这个问题。该函数正在运行,但如果警报返回时出错,用户将不知道他们是否正确完成了工作。

我已经包含了控制台日志,供那些知道并希望看到发生了什么的人使用。我还是AJAX的新手,如果需要其他信息或代码有问题,我可以编辑帖子。

共有1个答案

爱刚捷
2023-03-14

嗯,我刚才遇到过这种问题。我的答案是设置ajax请求的MIME类型。设置:

contentType: 'application/json'

如果jquery没有找到contentType或它无效,它将触发一个错误

当然,如果您正在处理JSON,请设置此内容类型。

否则,您可以放置“纯/文本”并执行JSON. parse(),但它有点脏

 类似资料:
  • 问题内容: 我有以下JS 和以下控制器代码: addarticle()javascript ajax可以运行并将vars发送到服务器并进入db,但是,javascript然后将运行错误函数而不是成功函数。http响应代码是200,我以为它将运行Success函数。有什么建议? 问题答案: 您需要从控制器返回json,因为这是jQuery期望的。您可以返回即 或者,您可以将html设置为数据类型(也

  • 问题内容: 我尝试在两种情况下执行T-SQL查询(我使用Win7,python 3.2,MS SQL Server Express 2008,适用于python 3.2的pyodbc): -情况1: 使用MS SQL Server Management Studio,我尝试执行查询: 返回成功结果 情况2: 但是运行代码后,我收到错误消息 如果我没有运行代码 我没有收到任何错误。但为什么? 问题答

  • 问题内容: 如果PHP脚本在某处失败,是否有办法使PHP返回AJAX错误代码?我正在关注一个教程,并将其输入到我的PHP中: 一切都很好,直到我意识到这是JSON数据。有没有一种方法可以使用标准的$ _POST和返回的HTML数据返回错误(例如,触发jQuery的AJAX 事件? 问题答案: 我不了解jQuery,但是如果它区分成功和失败(HTTP 200 OK vs. HTTP!= 200)Aj

  • 我已经构建了一个使用AJAX提交表单数据的登录脚本。 PHP部分在没有AJAX的情况下运行良好。但是系统不能与AJAX实现一起工作。 它始终显示以下消息,即使 PHP 文件返回 true[正确的用户名 用户名/密码不正确 超文本标记语言Result Div JQuery fn_login.php 有人可以指出代码/实践中的错误吗? 刚刚尝试禁用AJAX,当用户名/密码正确时,PHP文件可以正确回显

  • GetFolder操作给了我同样的结果。 此错误通常由未经许可的邮箱帐户引起。但我的所有用户都有活跃的Exchange许可证。为什么我会得到这样的ErrorNonExistentMailbox错误响应?

  • 问题内容: 以下是ajax请求。 这就是delete.php 运行代码后,它将成功删除文件,但不会显示任何消息。 我也尝试将ajax请求更改为: 仍然不显示该消息。所以我想在delete.php文件中出了点问题。请帮忙。 问题答案: 进行jquery + ajax + php的最佳方法如下: jQuery的: PHP: