【发布时间】:2020-11-27 19:26:04
【问题描述】:
我有一个如下的 ajax 调用。它在第一次通话时工作正常。但是当我第二次调用它时,它使页面无响应。我不知道为什么。这存在于文档就绪调用中。我的后端在第二次尝试中被调用,但它陷入了成功。我是这样称呼它的。
$('#upload-form').submit(function (event) {
event.preventDefault();
uploadPDF();
});
这是我进行 ajax 调用的方法。
function uploadPDF() {
var form = $('#upload-form')[0];
var data = new FormData(form);
/* call to upload api */
$.ajax({
type: "POST",
enctype: 'multipart/form-data',
url: "/uploadPdf",
data: data,
processData: false,
contentType: false,
cache: false,
async: false,
timeout: 600000,
success: function (data) {
$('#upload-form').trigger("reset");
$('#courses-container').show().siblings().hide();
var toastHTML = '<span>' + data.success + '</span>';
M.toast({
html: toastHTML,
classes: 'teal lighten-1'
});
},
error: function (textStatus, errorThrown) {
$('#upload-form').trigger("reset");
var toastHTML = '<span>' + textStatus.responseJSON.error +
'</span>';
M.toast({
html: toastHTML,
classes: 'red lighten-1'
});
}
});
}
【问题讨论】:
-
看起来您的服务器在第二次尝试时变得无响应。将
async: false与$.ajax一起使用几乎不是一个好主意。 -
@RoboRobok 谢谢。这就是问题所在:)
标签: javascript html jquery ajax material-design