微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ajaxStart事件上的jQuery模式对话框

我试图通过ajaxStart,ajaxStop / ajaxComplete事件使用jQuery UI模式对话框作为加载指示器.当页面触发时,Ajax处理程序会加载一些数据,并且模态对话框显示正常.但是,在Ajax事件完成时,它永远不会隐藏或关闭对话框.这是返回的本地服务器的一小部分代码,因此实际的Ajax事件非常快.

这是模态div的实际代码

$("#modalwindow").dialog({
              modal: true,height: 50,width: 200,zIndex: 999,resizable: false,title: "Please wait..."
      })
      .bind("ajaxStart",function(){ $(this).show(); })
      .bind("ajaxStop",function(){ $(this).hide(); });

Ajax事件只是一个普通的$.ajax({})GET方法调用.

基于在这里和谷歌的一些搜索,我试图改变ajaxStop处理程序使用$(“#modalwindow”).close(),$(“#modalwindow”).destroy()等.(#modalwindow在这里提到至于明确的背景).

我也试过使用标准的$(“#modalwindow”).dialog({}).ajaxStart(…也是.

我应该将事件绑定到不同的对象吗?或者在$.ajax()完成事件中调用它们?

我应该提一下,我正在测试最新的IE8,FF 3.6和Chrome.所有都具有相同/相似的效果.

解决方法

找到答案:

$("#modalwindow").dialog({
          modal: true,title: "Please wait..."
  })
  .bind("ajaxStart",function(){
      $(this).dialog("open"); })
  .bind("ajaxStop",function(){
      $(this).dialog("close");
  });

自我注意事项:RTFM.

当然,在所有这些中,现在我意识到它打开和关闭的速度很快就没用了.哦,希望有人会觉得这很有帮助.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐