我在Rails应用程序中有一个控制器,当满足特定条件时会调用js局部代码:
if false == validation_result
render :partial => 'my/show_modal.js.erb'
end
$("#modal_content").html("<%= escape_javascript(render 'my/show_modal') %>");
$("#notify").modal('show');
从上面的代码调用的html.erb呈现了一个模态,如下所示:
<div class="modal fade" tabindex="-1" id="notify" role="dialog">
<div class="modal-dialog">
<div class="modal-content" style="width:1000px;margin-left:-285px !important;">
<div class="modal-body">
<h3 class="modal-title">Please review</h3>
<span style="float: right">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
</span>
</div>
</div>
</div>
</div>
模态渲染很好;但是,当我单击模态上的Ok
按钮时,模态也很好,但在整个网页上留下了浅灰色的方案(该网页似乎失去了焦点,我必须刷新页面才能使用它再次)!
我在这里做错了什么?如何完全消除该模式,以便可以再次使用该网页?
我尝试了how to destroy bootstrap modal window completely?中建议的几乎所有方法,但没有一个对我有用。
我什至在上面页面上列出的几种方法上发表了评论,指出背景仍然无法消除。
也许这是一种非常古老的方法,但它应该起作用。在点击事件上分配hideModal()
功能,然后查看结果。