繁体   English   中英

jquery ui拦截器中的多个块?

[英]Multiple blocks in jquery ui blocker?

我正在使用这个插件。

但它似乎使用全局变量

$.blockUI();
$.unblockUI();

在那里我可以有这个块的不同实例。

 $(document).ajaxStart(function (e)
 {
          $.blockUI(); //setup with a loading msg.
  });

 $(document).ajaxStop(function (e)
        {       
            $.unblockUI();

        })


var ajax = // ajax setup stuff


// 1.5 way of doing it
ajax .success(function (response)
            {
               var valid = checkIfValid(response); // check if valid
               if(valid)
               {
                      $.blockUI(); // setup with a save message
               }

            });

这就是我所拥有的。 我放

$.blockUI();

保持简单,没有选项,但在我的真实代码中,我有消息和其他选项设置。

所以现在的问题是,一旦成功完成,ajax停止被调用并解锁所有内容。 我只希望清除ajax中启动的那个而不是有效的那个。

所以我需要不同的实例。

您可以通过在动态创建的div上调用block来完成您尝试执行的操作,然后只需从DOM中删除该div 例如:

$(document).ajaxStart(function (e) {
    /* Create a <div> that will contain the blocking elements: */
    $("<div id='ajax-block' style='position:fixed;width:100%;height:100%' />")
        .appendTo("body").block()
});

$(document).ajaxStop(function (e) {
    /* Remove the page block specific to the ajax request: */       
    $("#ajax-block").remove();
});

并为你阻塞的其他事件做类似的事情(只需更改动态附加divid属性和remove()调用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM