3

如何在根据条件打开时关闭打开的弹出窗口。

它看起来很奇怪,但我有要求,根据某些条件,如果它变成真的弹出应该自动关闭,怎么做?

我参加.dialog("close")document.ready活动,但它不起作用。任何想法?

更新

我发现问题是实际上弹出窗口已关闭,但在完成就绪事件后再次打开它。有什么帮助吗?

4

7 回答 7

3

如果它是引导模式,您可以使用下面的代码来显示/隐藏弹出窗口。

$('#modal').modal('toggle');  //To show and hide

if(condition) {
    $('#modal').modal('hide');  //To hide
}

$('#modal').modal('show');  //To show
于 2018-07-17T09:34:22.633 回答
3

一种简单的解决方案可能是

$('#dialog-close-btn').trigger('click') 

您指向对话框关闭按钮的位置。

于 2016-01-28T07:16:17.430 回答
2

这是一篇旧帖子,但如果其他人遇到这个问题,我遇到了类似的问题,即使使用 jquery 弹出窗口也不会关闭

$("#popup").dialog('close');

改编自同事代码的解决方案是在脚本部分顶部有一个控制变量,并在我打开弹出窗口时将其设置为 1,并在我希望它关闭时将其重置为 0。此外,我从 pageLoad 上的 html 中删除了弹出窗口(仍在 javascript 中),如下所示:

<script>
<code>
  var $l = jQuery.noConflict();
  var cntDialog = 0;
</code>

function pageLoad(sender,args) {
  $l(function () {
    if (cntDialog == 0) {
      RemoveDialog();
    });
  }

function initializeDialog(){
  $l("#popup").dialog({
    ...
    close: (function (sender,event) {
    RemoveDialog();
  })
});}

function RemoveDialog() {
  cntDialog = 0;
  $l("#popup").remove();
}
</script>

希望能帮助到你

于 2014-01-22T13:05:38.853 回答
0
if (condition){    
   $('dialog id').dialog('close');    
}
于 2013-09-30T06:43:13.907 回答
0

这应该在弹出窗口中完成工作:

<script>
    $(function() {
        if (condition) {
            window.close();
        }
    });
</script>
于 2013-09-30T06:49:07.720 回答
0

您必须在服务器端脚本中添加一些标签,并且必须在客户端设置事件侦听器以关闭弹出窗口。

意味着您必须设置以下内容:

parent.postMessage("CLOSE","*");  

在服务器上。

并设置侦听器客户端,例如:

var eventMethod = window.addEventListener ? "addEventListener" : "attachEvent";
var eventer = window[eventMethod];
var messageEvent = eventMethod == "attachEvent" ? "onmessage" : "message";

// 监听子窗口的消息

 eventer(messageEvent,function(e) {
    var key = e.message ? "message" : "data";
        var data = e[key];
    },false);

我没有时间检查这个。希望这对您有所帮助。

或者我通过以下网址:

https://developer.mozilla.org/en-US/docs/Web/API/Window.postMessage

http://nyamsprod.com/blog/2012/introduction-to-window-postmessage/

http://benalman.com/code/projects/jquery-postmessage/examples/iframe/

我给定的代码来自 URL:

Html5 - 跨浏览器 Iframe 邮件 - 孩子到父母?

您可以在侦听器中添加对话关闭代码。

谢谢

于 2015-02-14T12:26:30.510 回答
0

$('.my-modal').hide()将关闭该活动模式。

于 2017-10-04T16:55:08.680 回答