如何用Bootstrap模式检查前提条件

How to check preconditions with Bootstrap modal?

本文关键字:前提 条件 检查 模式 何用 Bootstrap      更新时间:2023-09-26

我有一个Bootstrap模式是正常工作的,被一个按钮触发:

<button type="button" class="btn btn-info mm" data-toggle="modal" data-target="#mm_modal" data-req="foo">

这个模态处理表单中的一些数据。我想显示一个警报,而不是显示模态在所有,如果表单数据验证失败。我该怎么做呢?

我已经尝试添加一个功能:

$('button.mm').click( function(ev)
{
    var req = $(ev.currentTarget).data('req');
    if ( req === 'foo' )
    {
        alert('Foo not supported'); 
        throw new Error('Foo not supported');
    }
}

警报显示正确,但throw似乎没有中止执行;Bootstrap模式会继续显示

解决方案(测试和工作):

ev.stopPropagation();代替throw new Error('Foo not supported');,模态将不显示

注意使用ev.preventDefault();不会阻止模态的出现。

stopPropagationpreventDefault的区别:这里

希望对你有帮助。