Ajax 发送请求两次



正如我在标题中所描述的,ajax 同时发送两个请求。仅当"异步"参数设置为"true"时,才会发生这种情况。当它是"假"时,那就没有问题了。

我通过以下方式阻止重新加载页面:

$(document).ready(function() {
$(document).on('submit', 'form', function() {
    showBusyIndicator();
    addTask();
    return false;
});

这是函数addTask((:

function addTask() {
let newTask = new Task(
    $("#taskSummary").val(),
    $("#taskDescription").val(),
    $("#taskDueTo").val()
);
$.ajax({
    url: apiHost + "/task/add/",
    headers: {
        "contentType": "application/json"
    },
    type: "POST",
    async: true,
    dataType: "json",
    data: JSON.stringify(newTask),
    complete: function (xhr) {
        hideBusyIndicator();
        if (xhr.status === 201) {
            closeAddTaskForm();
        } else {
            alert(xhr.status);
        }
    },
});
}

发现了问题 - 感谢@Randy Casburn。

addTask 的调用都是$(document).on('submit', 'form', function()

也在<form onsubmit="addTask()">

最新更新