gpt4 book ai didi

twitter-bootstrap-3 - bootstrap 在打开一个新的模态之前关闭所有打开的模态

转载 作者:行者123 更新时间:2023-12-04 16:39:01 25 4
gpt4 key购买 nike

我有一种情况,我正在使用多种模式(用于登录表单、注册表单、通行证检索表单等)。如果用户单击“登录”然后“注册”他们会发生什么情况'将得到两个相互叠加的模态。我希望 Bootstrap 在打开新模式之前自动关闭所有打开的模式。理想情况下也等待动画。

有人做过吗?我有以下解决方案,但我每次都需要针对该功能。

function close_modal() {
$('.modal').modal('hide')
}

如何将其绑定(bind)到打开的每个模式?

我正在使用 Bootstrap v3.3.4

最佳答案

根据 Bootstrap 的网站

Multiple open modals not supported Be sure not to open a modal while another is still visible. Showing more than one modal at a time requires custom code.



我尝试使用javascript同时打开多个模态,这导致第二个模态不响应点击等事件。

因此,如果您只是单击网页,您将不会同时显示两个多个模式。

这是链接
Bootstrap Modals

============在这里编辑================

你可以试试这个
$('.modal').on('show.bs.modal', function () {
$('.modal').not($(this)).each(function () {
$(this).modal('hide');
});
});

因此,在显示模式之前,此脚本将尝试关闭所有其他模式。

这是我使用的测试html。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Modal Test</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
</head>
<body>
<div class="modal fade" id="modal_1">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"><span>&times;</span></button>
<h4 class="modal-title">Title1</h4>
</div>
<div class="modal-body">
<p>Body1</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<button type="button" class="btn btn-default" id="launchSecond">Second</button>
</div>
</div>
</div>
</div>
<div class="modal fade" id="modal_2">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"><span>&times;</span></button>
<h4 class="modal-title">Title2</h4>
</div>
<div class="modal-body">
<p>Body2</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<button type="button" class="btn btn-default" id="launchFirst">First</button>
</div>
</div>
</div>
</div>

<div class="container">
<div class="row">
<div class="col-md-2 col-md-offset-5">
<button type="button" class="btn btn-success" id="launchModalBtn">Launch Modal</button>
</div>
</div>
</div>
</body>

<!-- Latest compiled and minified JavaScript -->
<script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
<script>
$(document).on('click','#launchModalBtn',function () {
$('#modal_1').modal();
});

$(document).on('click', '#launchSecond', function () {
$('#modal_2').modal();
})

$(document).on('click', '#launchFirst', function () {
$('#modal_1').modal();
})

$('.modal').on('show.bs.modal', function () {
$('.modal').not($(this)).each(function () {
$(this).modal('hide');
});
});
</script>
</html>

关于twitter-bootstrap-3 - bootstrap 在打开一个新的模态之前关闭所有打开的模态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32162747/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com