关闭bootstrap模式而不使用“hide”和“data-dismiss”

我想有条件地关闭bootstrap模态框。 如果我使用$('#modal').modal('hide'); 这个,我的代码出了点问题。 如果我在HTML模板中使用data-dismiss="modal" ,则在按钮点击之前应执行实际function之前执行模态解除操作。

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

您可以使用自动模态关闭行为来执行此操作,该行为使用data-dismiss属性本身或使用手动模式打开(我猜您当前正在执行),通过订阅hide事件并对事件使用preventDefault

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

演示

DEMO2

见文档

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

像这样制作另一个按钮

  

此按钮包含data-dismiss="modal" 。如果需要,您可以隐藏此按钮。

现在您可以以自定义方式使用任何其他function,并且当您想隐藏可以调用的模态时

 $(".btn-warning").click();