当我通过javascript添加警报和取消事件时,滚动条消失了

时间:2013-10-14 02:38:16

标签: javascript jquery html twitter-bootstrap-3

我遇到的一个问题是,当我使用javascript向已经有垂直滚动条的页面添加警报消息时,消息显示完美,但垂直滚动条消失了。当警报消息被解除时,滚动条不能再次出现。其实我不希望滚动条随时消失。我正在使用bootstrap 3.这是我的代码。

HTML:

... many HTML here ...
<div id="alertbox1"></div>
<div id="modal1">...stuff HTML here...</div>
... HTML here ...

脚本:

$('#modal1').on("show.bs.modal", function (event) {
    var ok = function_to_check_stuff_ok(); // ;)
    if (!ok){
        var myMessage = 'Lorem ipsum dolor sit amet...'
        var htmlText  = '<div class="alert alert-danger fade in">' +
                        '    <button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>' +
                        '    <p>' + myMessage + '</p>' +
                        '</div>';
        $('#alertbox1').html(htmlText);
        event.prevenDefault();
    }
});

1 个答案:

答案 0 :(得分:0)

问题: event.prevenDefault()的来电确实影响了模式的显示以及警示。

解决方案:检查并验证数据并显示提醒消息,然后通过手动调用打开模式(通过调用modal('show'))而不是检查show.bs.modal内部事件。