javascript bootstrap modal – 取消关闭

我的工作是使用javascript bootstrap 2.0.4

我正在寻找一种通过逻辑控制取消关闭模式的方法。 但我找不到任何细节如何做到这一点

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

像.NET这样的东西

OnWindowClosing(eventArguement) { if (shouldCancel) { eventArguement.Cancel = true; return; } } 

请看这里: http://www.bootply.com/QTTDf3zRgV

在这个例子中,如果选中复选框,则无法关闭模态(使用js / jquery):

 $('#myModal').on('hide.bs.modal', function(e){ if( $('#block').is(':checked') ) { e.preventDefault(); e.stopImmediatePropagation(); return false; } }); 

你提供的解决方案不起作用所以找到这个及其完美的解决方案参考https://github.com/twbs/bootstrap/issues/1202#issuecomment-48601320

 $('#myModal').on('hide.bs.modal.prevent', closeModalEvent); /** * allow popup to hide or not * @param {type} e * @returns {Boolean} */ function closeModalEvent(e) { e.preventDefault(); if ($('#block').is(':checked')) { $('#myModal').off('hide.bs.modal.prevent'); $("#myModal").modal('hide'); return true; } return false; } 

e.cancel未定义并导致错误 – 这就是上述解决方案正常工作的原因。

你应该添加e.stopImmediatePropagation();

这是一个演示: http : //www.bootply.com/o5jsyItQMm