settimeout不在块ui中工作

时间:2013-07-03 08:55:20

标签: javascript jquery asp.net blockui jquery-blockui

我正在使用块ui阻止点击按钮的div。但是在阻塞后我希望div在延迟一段时间后应该被解锁。但在我的情况下,div永久阻止。这是我的代码:

<script src="jQuery 1.10.1.min.js" type="text/javascript"></script>
    <script src="blockui.js" type="text/javascript"></script>
    <script type="text/javascript">
        $(document).ready(function () {
            $('#Button1').click(function () {
                $('div#blockit').block({

                    message: '<h6>Processing</h6>',
                    css: { border: '3px solid #a00' }


                });
                setTimeout($.unblockUI, 2000); 
            });

        });

    </script>



    <div>
        <input id="Button1" type="button" value="button" />
    </div>

    <div id="blockit" style="width: 200px; height=200px;">

    </div>

我无法弄清楚为什么settimeout不起作用。请给我解决方案。提前完成。

4 个答案:

答案 0 :(得分:0)

尝试

setTimeout(function(){ $.unblockUI },2000)

答案 1 :(得分:0)

$('#Button1').click(function () {
            $('div#blockit').block({

                message: '<h6>Processing</h6>',
                css: { border: '3px solid #a00' },
                timeout:2000

            });
            //setTimeout($.unblockUI, 2000); 
        });

答案 2 :(得分:0)

我的猜测是您收到了JavaScript错误,因为unblockui可能会使用this并将其调用this进入窗口。

如果在浏览器中按F12,您会在控制台中看到脚本错误吗?

            setTimeout(function(){
              $.unblockUI
            }, 2000); 

答案 3 :(得分:0)

你必须使用

$('div#blockit').unblock()

这是差异

$('id').block() -> $('id').unblock()

$.blockUI() -> $.unblockUI()