14

我想有条件地关闭引导模式框。如果我使用 $('#modal').modal('hide');它,我的代码会出现问题。如果我data-dismiss="modal"在 HTML 模板中使用,模式关闭操作会在我的实际功能应该在按钮单击时执行之前执行。

那么,还有其他方法可以关闭引导模式或data-dismiss="modal"在运行时使用任何想法吗?

4

2 回答 2

14

您可以通过使用data-dismiss属性本身的自动模式关闭行为或手动模式打开(我猜你目前正在做的),通过订阅hide事件并preventDefault在事件上使用来做到这一点。

$('yourmodalselector').on('hide',function(e){
   if(yourConditionNotToCloseMet){
      e.preventDefault();
   }
});

演示

演示2

查看文档

当调用 hide 实例方法时,会立即触发 hide 事件事件,该方法会以枯萎的方式调用,这是防止模式关闭的最佳位置。

于 2013-06-06T21:58:57.157 回答
3

再做一个这样的按钮

<button type="button" class="btn btn-warning btn-lg shiny" data-dismiss="modal" aria-hidden="true">Cancel</button>

此按钮包含data-dismiss="modal"。您可以根据需要隐藏它。

现在您可以以自定义方式使用任何其他功能,当您想要隐藏模式时,您可以调用

$(".btn-warning").click();
于 2014-11-21T06:10:40.963 回答