我正在尝试使用jQuery BlockUI 插件在执行排序算法时阻止 jQuery 对话框。排序的功能是这样的:
doSort : function() {
$("#sort_dlg").block();
// sort... takes a few seconds
$("#sort_dlg").unblock();
}
它有效,有点。直到排序完成后,对话框才会被阻止。(排序全部在本地完成,没有 AJAX 调用或任何东西。)如何在排序之前阻止它?
我尝试将block()
调用移动到对话框的 OK 按钮方法:
$(function() {
$("#sort_dlg").dialog({
autoOpen: false,
bgiframe: true,
modal: true,
buttons: {
"Cancel": function() { $(this).dialog("close"); },
"OK": function() {
$("#sort_dlg").block();
doSort();
}
}
});
});
但这没有帮助。(我对使用其他技术阻止 UI 的建议持开放态度。)