0

我想阻止页面,直到下载完成,然后解除阻止。我写了这段代码,但在 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 插件。

4

0 回答 0