Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
当我通过javascript添加警报和取消事件时,滚动条消失了_Javascript_Jquery_Html_Twitter Bootstrap 3 - Fatal编程技术网

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

当我通过javascript添加警报和取消事件时,滚动条消失了,javascript,jquery,html,twitter-bootstrap-3,Javascript,Jquery,Html,Twitter Bootstrap 3,我面临的一个问题是,当我使用javascript向已经有垂直滚动条的页面添加警告消息时,消息显示得非常完美,但垂直滚动条消失了。当警报消息被解除时,滚动条将无法再次出现。事实上,我不希望滚动条随时消失。我用的是bootstrap3。这是我的密码 HTML: ... many HTML here ... <div id="alertbox1"></div> <div id="modal1">...stuff HTML here...</div> ..

我面临的一个问题是,当我使用javascript向已经有垂直滚动条的页面添加警告消息时,消息显示得非常完美,但垂直滚动条消失了。当警报消息被解除时,滚动条将无法再次出现。事实上,我不希望滚动条随时消失。我用的是bootstrap3。这是我的密码

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();
    }
});
。。。这里有很多HTML。。。
…在这里填充HTML。。。
... 这里是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();
    }
});
$('#modal1')。打开(“show.bs.modal”,函数(事件){
var ok=函数_to _check _stuff _ok();/)
如果(!ok){
var myMessage='Lorem ipsum dolor sit amet…'
var htmlText=''+
“×;”+
“”+myMessage+”

”+ ''; $('#alertbox1').html(htmlText); event.prevenDefault(); } });
问题:调用
event.prevenDefault()
确实影响了模式和警报的显示


解决方案:在手动调用open modal(通过调用
modal('show')
)之前,检查并验证数据并显示警报消息,而不是检查
show.bs.modal
事件内部。

显然您发布的代码没有任何内容,因此您必须发布其余内容。最好还是戴上它。我发现我在
show.bs.modal
event中显示警报消息后立即调用了event.preventDefault()。它使滚动条消失。我将更新问题和答案。谢谢