2013-08-16 81 views
3

我想这是Bootstrap本身的错误,因为即使在演示页面中我也遇到过这个问题。如果打开模式窗口,内置关闭按钮将首次运行,但如果关闭模式并重新打开模式窗口,则关闭(和X)按钮不会关闭模式,因此您必须单击外部的框关闭它。你可以看到这个引导程序演示页:Bootstrap 3模式不会在第一次打开后关闭

http://getbootstrap.com/javascript/#modals

(向下滚动到“现场演示”,然后单击“启动演示模式”,一旦关闭模式窗口,重新打开它,并“密切。 “按钮将不再工作,直到页面刷新。)

有没有人找到解决方案,以便每次打开模式时关闭按钮的作品?

回答

3

在引导这个错误似乎是一个热门话题: https://github.com/twbs/bootstrap/issues/9362

我将更新我的引导,看看有没有做它...

+1

Ahah!希望这将很快得到解决。我只是遵循了该页面上的评论意见,并从bootstrap(.min).js中删除了'.off('click.dismiss.modal')',并且做到了这一点! – Zak

+0

有没有办法解决这个问题,而不是黑客引导?我能以某种方式再次绑定他们已删除的内容吗?我宁愿继续使用CDN并等待他们解决问题? –

0

删除.off(“click.dismiss。 modal')在bootstrap.min.js为我做了诡计。如果您使用的是CDN,则需要下载并相应地更改参考。

1

如果您喜欢我不想修改引导程序文件,您可以改为执行以下操作。

jQuery('[data-dismiss="modal"]').on('click', function(){ 
    jQuery('.modal').hide(); 
    jQuery('.modal-backdrop').hide(); 
}); 

在.modal('show');请致电

1

这对Bootstrap 3来说仍然是一个问题。发生是因为我动态地填充目标模态。认为这可能会有助于任何人尝试做类似的事情!

我只好:

  • 添加类的关闭按钮
  • 使用该类用作触发:
  • 隐藏modal;dynamic content;并删除.modal-backdrop

    $(document).on('click', '#modal .closeModal', function(){ 
        $('#modal').modal('hide'); // hide the modal 
        $('#modal-dynamic-content').empty(); // empties dynamic content 
        $('.modal-backdrop').remove(); // removes all modal-backdrops 
    }); 
    

注意:这会清空你的模态,所以只有在触发负载进入所述模态时才使用空模型

相关问题