繁体   English   中英

另一个模态内的 Bootstrap 模态 - 关闭按钮问题

[英]Bootstrap modal inside another modal - Close Button Issue

在我的 JSP 页面中,我有一个模式显示一个页面,该页面具有另一个模式(内部模式)。

第一个模态:

<div class="modal-dialog modal-lg"  style="background: white;  width: 90% !important">
<input type="hidden" id="report-request-data-id" value="${requestId}"/>
<div class="modal-body">
  <div id="reportDataDetailsDiv"></div>
</div>
<div class="modal-footer">
              
    <label class="btn-is float">
        <spring:message code='close.label'/>
        <input type="button" id="close_report_request_view" class="col-xs-3 col-lg-1 col-md-1" data-dismiss="modal" style="display: none;"/>
    </label>
              
    </div>
</div>

内部模态(加载在上面的 id 为“reportDataDetailsDiv”的 div 中):

<div class="modal-dialog modal-lg" style="background: white;border-radius: 6px;">
<div class="modal-body">
<div class="modal-content">
<div class="col-centered col-lg-12 col-xs-12 ">


.....etc


<div class="modal-footer">
              
        <label class="btn-is float">
            <spring:message code='close.label'/>
            <input type="button" class="cus-close-modal-btn col-xs-3 col-lg-1 col-md-1" style="display: none;"/>
        </label>
              
    </div>
    </div>
    </div>
</div>

当我单击内部模式中的关闭按钮时会发生问题。 当我这样做时,两个模态都会关闭,但我希望每个模态的关闭动作都是独立的。 我应该如何正确地做到这一点?

谢谢你。

当您在 main-modal 内的reportDataDetailsDiv中加载其他模态时,您可以使用.show()显示它,并且每当单击close按钮时,您都可以删除在reportDataDetailsDiv添加的整个div

演示代码

 //suppose other modal is added like below $(".addmodal").click(function() { //append modal undr div $("#reportDataDetailsDiv").html('<div class="modal-dialog modal modal-child" style="background: white;border-radius: 6px;" ><div class="modal-body"><div class="modal-content">Some message to show ....<div class="col-centered col-lg-12 col-xs-12 "><div class="modal-footer"> <label class="btn-is float"><input type="button" class="cus-close-modal-btn " value ="Close" style=""/> </label> </div></div></div></div>') $(".modal-child").show(); //show that modal $(this).hide(); $("#close_report_request_view").prop('disabled', true);//disable main modal button }) //onclick of close button for modal added $(document).on('click', '.cus-close-modal-btn', function() { $(this).closest(".modal-child").remove(); //remove whole div $("#close_report_request_view").prop('disabled', false);//enable main modal buton });
 <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" /> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> <a href="#myModal" role="button" class="btn btn-primary" data-toggle="modal">Click to open modal</a> <div class="modal-dialog modal fade modal" id="myModal" tabindex="-1" role="dialog" aria-hidden="true" style="background: white; width: 90% !important"> <input type="hidden" id="report-request-data-id" value="1" /> <div class="modal-body"> <div id="reportDataDetailsDiv"></div> </div> <button class="addmodal btn btn-primary">Click me to open other modal</button> <div class="modal-footer"> <label class="btn-is float"> Close <input type="button" id="close_report_request_view" class="col-xs-3 col-lg-1 col-md-1" data-dismiss="modal" style="display: none;"/> </label> </div> </div>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM