【发布时间】:2014-03-06 12:43:30
【问题描述】:
我正在开发一个 UI5 应用程序。我想在 ajax 请求期间阻止 UI 表单用户。我添加了以下代码:
var dialog = new sap.m.BusyDialog({
text: this.languageModel.getModelProperty("BUSY_DIALOG_FETCHING_DATA"),
title : this.languageModel.getModelProperty("BUSY_DIALOG_WAIT")
});
var that = this;
jQuery.ajaxSetup({
beforeSend: function() {
dialog = (dialog) ? dialog : new sap.m.BusyDialog({
text : that.languageModel.getModelProperty("BUSY_DIALOG_FETCHING_DATA"),
title : that.languageModel.getModelProperty("BUSY_DIALOG_WAIT")
});
dialog.open();
},
complete: function() {
console.log("close");
dialog.close();
}
});
在控制台中,我得到了很好的结果,并且在调试时我可以看到对话框,但是在正常模式下(没有任何断点),忙碌的对话框根本不会出现。有什么线索吗?
【问题讨论】:
-
这是由于同步请求:stackoverflow.com/a/61573982/5846045。给浏览器时间来更新 DOM
标签: javascript jquery ajax xmlhttprequest sapui5