我想阻止页面,直到下载完成,然后取消阻止。我写了这段代码但是1秒后它解锁了UI,下载仍未完成。
<script type="text/javascript">
var fileDownloadCheckTimer;
function blockUIForDownload() {
if (IsCookiesEnable()) {
var token = new Date().getTime(); //use the current timestamp as the token value
$.blockUI({ message: 'لطفا منتظر بمانید تا فایل مورد نظر شما دانلود شود', fadeIn: 0 });
fileDownloadCheckTimer = window.setInterval(function() {
var cookieValue = $.cookie('fileDownloadToken');
// alert(cookieValue);
if (cookieValue != null)
finishDownload();
}, 1000);
}
}
function IsCookiesEnable() {
var cookieEnabled = (navigator.cookieEnabled) ? true : false;
if (typeof navigator.cookieEnabled == "undefined" && !cookieEnabled) {
document.cookie = "testcookie";
cookieEnabled = (document.cookie.indexOf("testcookie") != -1) ? true : false;
}
return (cookieEnabled);
}
function finishDownload() {
window.clearInterval(fileDownloadCheckTimer);
$.cookie('fileDownloadToken', null);
$.unblockUI();
}
我使用asp.net,C#和blockUi插件。