打开时更改Bootstrap模态背景设置
我正在尝试将我的模态的背景设置更改为“静态”作为对事件的响应,以便它变得不可忽略。 我在点击模态内的按钮后设置了$('#myModal').modal({ backdrop: 'static',keyboard:false })
,但没有运气。
我想要的效果类似于nakupanda的bootstrap-dialog的效果(参见Manipulating Buttons部分,当dialog.setClosable(true);
在点击’Click to disable and spin’按钮时触发,模态不再可关闭)
请看这个jsfiddle 。
我知道这个问题已在这里提出,但它没有正确的答案。 我知道这有可能以某种方式,但我无法分析nakupanda的代码。
尝试更改modal
的选项如下:
$('#myModal').data('bs.modal').options.backdrop = 'static';
这是工作示例
对于试图在v4上执行此操作的任何人,您需要更改:
$("#myModal").data('bs.modal').options.backdrop = 'static';
至
$("#myModal").data('bs.modal')._config.backdrop = 'static';
为什么不在页面加载时使用选项而不是单击按钮来初始化模态?
只需定义一个文件就绪fn并将下面的代码放入其中。
$('#myModal').modal({ backdrop: 'static', keyboard: false })
你可以试试这样的东西: http : //codepen.io/bwobst/pen/GrKBKy?edit = 1010
$('#open-modal').click(function(evt) { $('#myModal').modal({backdrop: 'static'}); $('.modal button').prop('disabled', true); });
当您单击“打开模态”按钮时,它会将背景设置为静态并禁用模式中的按钮。
我想出了一个解决方案。 问题是即使您将背景设置为静态,仍然有一个点击监听器。
我的解决方案在这里。 https://jsfiddle.net/25zbf094/2/
JavaScript的
$('#makeIndismissable').click(function(){ $('#myModal').prop('onclick',null).off('click'); }); $('#close').click(function(){ $('#myModal').modal("hide") })
我保持HTML大部分未更改,但在关闭按钮中添加了“关闭”的ID。 正如您在上面所看到的,您仍然可以通过按右上角的X来关闭模态。