再次点击外面时如何关闭引导模态窗口?

时间:2017-09-11 17:50:05

标签: javascript jquery html twitter-bootstrap bootstrap-modal

我在使用bootstrap框架的项目中工作,我读到有不同的方法可以打开一个模态窗口,在我的例子中,我用这个代码用javascript打开它:

$('#formVenta').modal({backdrop: 'static', keyboard: false});

我之所以这样做是因为客户要求我在外面点击时避免关闭模态,但是现在他想再次点击外面并再次关闭模态,但是当窗口内的特定div内没有内容时

<div id="content_goes_here"></div>

我想以这种方式解决这个问题

$(document).click(function(e) {

        //check if modal is open
        if ($('#formVenta').is(':visible')) {

            //check if div has content
            if ($('#content_goes_here').html().length > 0) {

                //do something
            }
        }
    });

我看到的问题是在div之外有文本输入,如果我想搜索某些东西,当我点击输入时它会关闭,因为{{1}内部还没有内容我希望避免这个问题。

有没有办法只有当我在模态窗口外点击时检查div是否为空并且与我打开窗口的方式相反,在这种情况下与此相反?

div
例如,

更改属性$('#formVenta').modal({backdrop: 'static', keyboard: false}); 的值。

我希望你能帮助我,谢谢。

1 个答案:

答案 0 :(得分:1)

抱歉,找到合适的属性需要一段时间,但这是最好的例子

$('#formVenta').data('bs.modal').options.backdrop = false;$('#formVenta').data('bs.modal').options.backdrop = static;

您可以查看您执行的当前属性 alert(JSON.stringify($('#myModal3').data('bs.modal').options));或将警报更改为console.log()

所以你可以在div上放置一个事件,当它更改为运行验证函数时,在验证函数内部你可以用上面的代码改变模态的选项