Bootstrap - 通过JavaScript警报事件防止关闭警报

时间:2017-04-26 04:41:26

标签: javascript jquery twitter-bootstrap

请查看我的代码:

$('#myPanel').on('closed.bs.alert', function () {
    //  insert code here
});

我在里面尝试了return false,甚至在event中作为参数传递了function(){}并执行了event.preventDefault(),但它仍然不会阻止警报被关闭。我需要阻止警报被关闭,以防我不满意某些条件。

2 个答案:

答案 0 :(得分:2)

也许这对你有用:

$('#myPanel [data-dismiss]').on('click', function () {
    return false;
});

我们不是挂钩到bootstrap的事件,而是挂钩用户点击“关闭”按钮,并阻止引导事件的触发。

答案 1 :(得分:1)

代码无法正常工作的原因是您在警报已关闭后触发的事件中添加了事件处理程序,而不是在警报关闭之前触发的事件处理程序。这就是你想要的:

$('#myPanel').on('close.bs.alert', function (e) {
    e.preventPropagation();
});

使用return false;也可以,但我尽量使用事件方法,因为并非所有浏览器都以相同的方式解释从事件处理程序返回false