Ajax发送请求两次

时间:2019-06-08 19:24:59

标签: javascript jquery ajax

正如我在标题中所述,ajax正在同时发送两个请求。仅当“异步”参数设置为“真”时,才会发生这种情况。如果它为“ false”,则没有问题。

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

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

1 个答案:

答案 0 :(得分:0)

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

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

以及<form onsubmit="addTask()">