ajaxを使って "async = false"リクエストを送信すると、レスポンスの継続中にローディングサインを表示できますか?そして、はい、警告メッセージが表示されますが、私は積み込みサインを見たことがありません。私はbeforeSend関数がchromeで正しく機能しないと思うでしょう
ところで、Firefoxには何の問題もありません。この非同期値をtrueに変更すると、実際にはクロムでも機能します。
var HttpUtil = {
get : function(url, onSuccess, onFailure) {
this.ajaxCall('GET', url, this.defaultContentType, null, false, false, onSuccess, onFailure);
},
post : function(url, request, onSuccess, onFailure) {
var showSuccessMsg = url.indexOf('/filter') < 0;
this.ajaxCall('POST', url, null, JSON.stringify(request), showSuccessMsg, true, onSuccess, onFailure);
},
postFormData : function(url, request, onSuccess, onFailure) {
this.ajaxCall('POST', url, false, request, true, true, onSuccess, onFailure);
},
put : function(url, request, onSuccess, onFailure) {
this.ajaxCall('PUT', url, null, JSON.stringify(request), true, true, onSuccess, onFailure);
},
delete : function(url, onSuccess, onFailure) {
this.ajaxCall('POST', url, null, null, true, true, onSuccess, onFailure);
},
ajaxCall : function(type, url, contentType, request, showSuccessMsg, showLoading, onSuccess, onFailure) {
if(contentType == null){
contentType = 'application/json';
}
$.ajax({
url: url,
type: type,
data: request,
async: false,
contentType : contentType,
processData : false,
success: function(data) {
if(showSuccessMsg){
ShowMessage.success("Success!", function onConfirm(){
onSuccess(data);
});
}else{
onSuccess(data);
}
},
error: function(error) {
if (onFailure instanceof Function) {
onFailure(error);
} else {
if(error.responseJSON){
ShowMessage.error(error.responseJSON.status, error.responseJSON.message);
}else{
ShowMessage.error(JSON.stringify(error));
}
}
},
beforeSend : function() {
if(showLoading){
//$('.loading1').css("z-index","11111");
$('.loading1').css("display","block");
//alert("1");
}
},
complete : function() {
if(showLoading){
//$('.loading1').css("z-index","-1");
$('.loading1').css("display","none");
}
}
});
}
}
それをofcourseの後半に取り組んでいますこのように動作しますが、今回は閉じていません:) – radeveloper
タイムアウトのために完全なメソッドに入らないため、終了しません。 – radeveloper