在jQuery中按下esc或outside时动态禁用关闭引导模式

时间:2016-07-21 10:55:27

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

我有一个bootstrap模式,里面有一个表单。提交此表单需要几秒钟,如果用户点击外部或按esc,则会关闭模式。我想在提交时禁用此功能:

$("#submit-btn").on("click", function(){
    // disable esc and outside

    submit()
})

但我想让用户按esc关闭窗口,如果他还没有提交。这就是为什么我不能在我的模态开启按钮上使用它的原因:

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

我试过了:

$("#submit-btn").on("click", function(){
    $.fn.modal.prototype.constructor.Constructor.DEFAULTS.backdrop = 'static';
    $.fn.modal.prototype.constructor.Constructor.DEFAULTS.keyboard = false;

    submit()
})

没有帮助。

我该怎么做?

1 个答案:

答案 0 :(得分:2)

$("#submit-btn").on("click", function(){
  $('#myModal').data('bs.modal').options.keyboard = false;
  $('#myModal').data('bs.modal').options.backdrop = 'static';
  submit();
});