В $ .ajax есть функция beforeSend, но теперь я пытаюсь использовать XMLHttpRequest, я ищу эквивалентную функцию beforeSend в $ .ajax. Как я могу реализовать его здесь.AJAX: Какова эквивалентная функция функции beforeSend в XMLHttpRequest
Вот мой XHR код,
xhr = new XMLHttpRequest();
var url = '../ajax/ajax_edit/update_ajax_staffUser.php';
if(file.files.length !== 0){
if(!check(fileUpload.type)){
alert("This file format not accepted");
return false;
}
xhr.open('post', url+param, true);
xhr.setRequestHeader('Content-Type','multipart/form-data');
xhr.setRequestHeader('X-File-Name', fileUpload.name);
xhr.setRequestHeader('X-File-Size', fileUpload.size);
xhr.setRequestHeader('X-File-Type', fileUpload.type);
xhr.send(fileUpload);
}else{
xhr.open('post', url+param, true);
xhr.setRequestHeader('Content-Type','multipart/form-data');
xhr.send(fileUpload);
}
xhr.onreadystatechange = function(e){
if(xhr.readyState===4){
if(xhr.status==200){
$('.bounce_dim').show();
setTimeout(function(){
$('.trigger_danger_alert_changable_success').show().delay(5000).fadeOut();
$('#palitan_ng_text_success').html('User successfully modified');
$('#frm_edit_staffUser')[0].reset();
$('#modal_staff').modal('hide');
$('.bounce_dim').hide();
},1000);
getUserStaffTable();
}
}
}
Поскольку пользователи загружают изображения в моей сети, мне нужно, чтобы сделать интерфейс ожидания до пожаров вызов, так как размер изображения слишком велики.
beforesend - это просто функция, которая выполняется до отправки аякс-звонка, ничего особенного? Планируете ли вы избавиться от остальной части jQuery-зависимого кода, включая эти анимации? В противном случае, в чем смысл? – adeneo
Нет. Я имею в виду, когда я нажимаю кнопку, он должен сначала отобразить анимацию загрузки, пока изображение не будет полностью загружено. Что происходит, когда я нажимаю кнопку, пользователь не будет определять, загружается ли картинка или нет. Кроме того, я не хочу, чтобы пользователи делали действие на моей странице, а изображение все еще загружалось –
Также потому, что я помещаю анимацию внутри beforeSend в другой код $ .ajax. –