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

时间:2017-05-26 21:31:32

标签: ajax

    $.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);
        }
    });

enter image description here

大家好,

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

我试图从最终用户的角度解决这个问题。该功能正在运行,但如果警报返回时出现错误,则用户将无法确定他们是否正确完成了工作。

我已经为那些知道想要了解情况的人提供了控制台日志。我仍然是AJAX的新手,如果需要其他信息或者代码存在问题,我可以编辑帖子。

1 个答案:

答案 0 :(得分:0)

嗯,我刚才面对这样的问题。 我的答案是设置ajax请求的MIME类型。 设置:

contentType: 'application/json'

如果jquery没有找到contentType或者它是无效的,则会触发错误

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

否则你可以放置&plain; text'并做一个JSON.parse(),但它有点脏