Twitter bootstrap 3 引导模式背景=';静态';不起作用
首先,我使用以下命令打开我的模式:Twitter bootstrap 3 引导模式背景=';静态';不起作用,twitter-bootstrap-3,bootstrap-modal,Twitter Bootstrap 3,Bootstrap Modal,首先,我使用以下命令打开我的模式: $('#myModal').modal('show'); 然后,在另一种情况下,我需要在按下ESC/单击外部时,该模式不会关闭,因此我使用以下方法: $('#myModal').modal({ backdrop: 'static', keyboard: false }) 但是一旦我用第一种方法打开模态,第二种方法就不起作用了。有什么提示吗 如何强制background值开关工作?我找到了解决此问题的方法 一旦模式被隐藏,引导数据仍然保留在它
$('#myModal').modal('show');
然后,在另一种情况下,我需要在按下ESC/单击外部时,该模式不会关闭,因此我使用以下方法:
$('#myModal').modal({
backdrop: 'static',
keyboard: false
})
但是一旦我用第一种方法打开模态,第二种方法就不起作用了。有什么提示吗
如何强制
background
值开关工作?我找到了解决此问题的方法
一旦模式被隐藏,引导数据仍然保留在它上面。为了防止发生这种情况,我采取了以下措施:
$('myModal').modal('show')//展示
//...
//如果你不想失去对先前背景的引用
$('#myModal').modal('hide');
$('#myModal').data('bs.modal',null);//这将清除BS模态数据
//...
//现在就像你期望的那样工作
$('#myModal').modal({背景:'static',键盘:false});
类似于但更简洁:
$('#myModal').modal({backdrop: true, keyboard: false, show: true});
$('#myModal').data('bs.modal').options.backdrop = 'static';
这是为bootstrap3.+
另请参见:我在Bootstrap4.1.1中也遇到了同样的问题,只有在将数据属性添加到html中时,它才起作用
<div class="modal fade show" id="myModal" tabindex="-1" role="dialog"
style="display: block;" data-keyboard="false" data-backdrop="static">
...
...
我想在AJAX请求完成时禁用关闭模式
让我朝着正确的方向前进,但是在引导程序4中,在模态已经显示之后,我可以务实地做到这一点的唯一方法是:
$(“#myModal”).data('bs.modal')。_config.background='static'代码>
也就是说,在v3
和v4
之间,它们似乎已将bs.modal
数据对象的选项
属性更改为\u config
,有两种方法处理此问题:
1) 您可以直接将数据属性添加到HTML中-
<div class="modal fade show" id="myModal" tabindex="-1" role="dialog"
style="display: block;" data-keyboard="false" data-backdrop="static">
对于引导V3-
$('#myModal').data('bs.modal').options.backdrop = 'static';
这也是Bootstrap 3的解决方案,如果您使用标记而不是JS methodsYes打开模态,即使模态是使用Javascript打开的,也是如此。这对我来说很好。谢谢
$('#myModal').data('bs.modal').options.backdrop = 'static';