Bootstrap之modal关闭,但遮罩层无法隐藏

点击如下modal中的按钮时,modal可以正常关闭。

  <button v-if="flag == 'update' " data-dismiss="modal" class="btn btn-success btn-sm"
               @click="updateMainProjectSubmit()">修改
  </button>

因为想在点击按钮后执行判断,判断成立才关闭modal,否则不关。就将按钮的data-dismiss="modal"属性去掉,如下代码所示。

<button v-if="flag == 'update' "  class="btn btn-success btn-sm"
            @click="updateMainProjectSubmit()">修改
</button>

并在按钮的click方法updateMainProjectSubmit中,在符合判断要求时,手动将modal关闭。

 $('#nowMainProjectDataForm').modal('hide');//隐藏modal

这时问题就来了,modal是关闭了,但遮罩层未隐藏,造成无法点击页面进行后续操作的后果。
从图1中可以看到,元素中还有三个modal-backdrop的div 

图1​​​​​​

最后添加代码 $('.modal-backdrop').remove(); 去掉遮罩层,问题解决
如下:

  $('#nowMainProjectDataForm').modal('hide');//隐藏modal
  $('.modal-backdrop').remove();//去掉遮罩层

总结:将modal hide并不能隐藏遮罩层,还应手动将遮罩层去掉。这样才能替代 data-dismiss="modal" 属性

  • 14
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值