gpt4 book ai didi

javascript - 在另一个调用 ajax 结束之前调用 ajax

转载 作者:行者123 更新时间:2023-12-01 05:15:56 25 4
gpt4 key购买 nike

我有一个ajax调用负责上传(通过SFTP)。它们是大文件,所以我无法锁定页面。在同一页面上,我有一个搜索字段,通过 ajax 在表格中显示结果。问题:当我调用上传 ajax 时,屏幕上的所有内容仍然有效,但搜索 ajax 请求仅在上传结束时刷新表。如何在ajax上传完成之前请求搜索ajax并在屏幕上显示结果?

注意:所有调用都是异步的

$(document).on("keyup", "#idsearchall", function(){
var valor = $(this).val();
updatetable(valor);
});
function ajax(options) {
return new Promise(function (resolve, reject) {
$.ajax(options).done(resolve).fail(reject);
});
}
var updatetable = function(text){
ajax({
method: "POST",
url: ".../index.php?status=ajax",
async: true,
data: {mk: 4, search: text}
}).then(
function sucess(data, textStatus, jqXHR) {
$('#tablesearchall').html(data); //Success works well
},
function fail(jqXHR, textStatus, errorThrown) {
console.log(textStatus, errorThrown);
}
).catch(function errorHandler(error) {
console.log(error);
});
};
$(document).on("click", "a[input-send='upload']", function(){
//**... ... ... codes to get file information
var formData = new FormData();
formData.append('documento[]', fileSelect[0], fileSelect[0].name);
ajax({
method: "POST",
url: ".../transmissao.php?status=ajax&mk=1",
data: formData,
processData: false,
async: true,
contentType: false
}).then(
function sucess(data, textStatus, jqXHR) {
var splitmsg = data.split("|");
if(parseInt(splitmsg[0])== 1){
var pathftp = splitmsg[1];
alert('success', "info"); //Success works well
}
},
function fail(jqXHR, textStatus, errorThrown) {
console.log(textStatus, errorThrown);
}
).catch(function errorHandler(error) {
console.log(error);
});});

showing both calls as pending

提前非常感谢

最佳答案

这就是我在评论中的意思?这对你正在尝试的事情不起作用吗?

$.when(
$.ajax({
url: '/echo/html/',
success: function(data) {
alert('request complete')
}
}),
$.ajax({
url: '/echo/html/',
success: function(data) {
alert('request complete')
}
})
).then( function(){
alert('all complete');
});

关于javascript - 在另一个调用 ajax 结束之前调用 ajax,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49469881/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com