我在每个页面上运行以下代码:
$(document).ready(function () {
$(document).ajaxStart($.blockUI);
$(document).ajaxStop($.unblockUI);
$("form").submit(function() {
if ($(this).valid() == true) {
$.blockUI();
}
});
});
此代码允许我在 AJAX 调用和表单发布期间显示“正在加载...”消息。一般来说,这工作正常。但是,我有一个场景,我需要在进行表单发布之前进行 AJAX 调用以验证一条数据,如下所示:
$.ajax({
url: '/Item/VerifyFolder/',
type: 'POST',
dataType: 'json',
data: {
folderName: folderName
},
success: function (data, textStatus, jqXHR) {
$.unblockUI();
if (data.folderItemExists == true)
{
$("form").submit();
}
else
{
if (confirm("The folder specified for this item does not exist. Do you want to create it?") == true)
{
// ...
$("form").submit();
}
else
{
return false;
}
}
},
error: function (jqXHR, textStatus, errorThrown) {
DisplayError(textStatus);
}
});
在我的 AJAX 成功回调中,我首先调用$.unblockUI()
. 但是,它似乎没有任何效果。结果,弹出警报时仍然显示“正在加载...”消息。
我在网上看到过各种关于 IE 8 和 unblockUI 方法(HTML 格式错误,需要元标记等)问题的帖子,但我还没有找到可行的解决方案。
任何指导将不胜感激。谢谢!