【问题标题】:Unable to change options for Twitter Bootstrap modal WHILE visible在可见时无法更改 Twitter Bootstrap 模式的选项
【发布时间】:2013-08-25 18:21:47
【问题描述】:

我的代码:

modal.modal({keyboard: true, backdrop: true});

function submit(modal){
    modal.data('modal').options.keyboard = false;
    modal.data('modal').options.backdrop = 'static';
    /* Do other stuff */
};

但是,在运行函数submit 后,单击背景或按Esc 会导致模式隐藏。我知道modal 变量是正确的,因为运行modal.modal('hide'); 在函数submit 中工作。 submit 函数脚本被调用模态是可见的。

如何更改这些选项并让它们立即生效?

【问题讨论】:

    标签: javascript jquery twitter-bootstrap


    【解决方案1】:

    能够使用以下内容:

    modal.off('keyup.dismiss.modal');
    $('div.modal-backdrop').off();
    

    第一个禁用了转义键绑定,后者禁用了背景上的点击事件。

    【讨论】:

    【解决方案2】:

    这是一个如何使用它的示例。

    $('#my-modal').modal({
    show : true,
    keyboard : true,
    backdrop : true
    });
    

    你也可以在这里找到这个问题的答案:How do I specify multiple javascript modal parameters with Twitter Bootstrap?

    【讨论】:

    • 谢谢,但我需要在模式打开时更改选项,而不是在我初始化它时。请参阅jsfiddle.net/DCR4Y/19
    【解决方案3】:

    你可以简单地添加这个:

     data-backdrop="static" data-keyboard="false"
    

    到模态本身:

     <a class="btn" data-toggle="modal" data-backdrop="static" data-keyboard="false" href="#myModal" >Launch Modal</a>
    

    然后在模态打开时使用 JavaScript 更改它。这应该可以帮助您根据需要自定义模式。

    【讨论】:

    • 这不会在模态打开时更改设置,这是我需要的。
    猜你喜欢
    • 2015-12-27
    • 2012-08-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-02
    相关资源
    最近更新 更多