2010-08-16 112 views
0

我正在使用jQuery BlockUI插件,我喜欢采用iPhoto(ish)http://malsup.com/jquery/block/#demos所示的样式。jQuery BlockUI插件 - 如何设置回调函数,当我需要解锁BlockUI

我设计了通过ajax提交的jQuery表单。 这里是我想做些什么:用户点击提交按钮火起来的形式服务器

1>之后,我弹出这样的iPhoto(ISH)对话框

2>当ajax响应事件返回,然后我解锁这个对话框。

我该怎么做才能实现这样的功能?

谢谢

回答

1

可以疏通具有UI它引发了.ajaxStop()事件,像这样:

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

最后一个AJAX请求完成时这将解锁的用户界面。如果你还没有拿到第一部分,有一个匹配.ajaxStart(),像这样:

$(document).ajaxStart(function() { 
    $.blockUI({ ...options... }); 
}); 
+0

这个解决方案的问题是,如果有另一个AJAX事件的形式发射,那么这些处理器将被不正确地触发。 谢谢 – q0987 2010-08-16 18:03:49

+0

@ q0987 - 在你调用'.ajax()'和你的'success'处理程序解除阻塞之前,你可以在你自己的处理程序中做同样的事情,那是什么意思? – 2010-08-16 18:06:36