Bootstrap Modal 是一个弹出窗口组件,通常用于显示额外的信息、警告、表单或其他交互内容。Modal 通过 JavaScript 和 CSS 实现,并且可以通过按钮触发。
Bootstrap Modal 主要有以下几种类型:
Bootstrap Modal 按钮关闭无法在第二次关闭时关闭的问题通常是由于 JavaScript 事件处理不当或 DOM 更新不及时导致的。
以下是一个示例代码,展示如何正确绑定和解除绑定事件:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Bootstrap Modal Example</title>
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" rel="stylesheet">
</head>
<body>
<!-- Modal -->
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Modal title</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
Modal body text goes here.
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
<button type="button" class="btn btn-primary">Save changes</button>
</div>
</div>
</div>
</div>
<!-- Button to Trigger Modal -->
<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#myModal">
Open Modal
</button>
<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.5.4/dist/umd/popper.min.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script>
<script>
$(document).ready(function () {
$('#myModal').on('hidden.bs.modal', function () {
// 重新绑定事件或清理事件处理程序
console.log('Modal is hidden');
});
});
</script>
</body>
</html>
通过上述代码,确保在 Modal 隐藏后重新绑定事件或清理事件处理程序,可以有效解决按钮关闭无法在第二次关闭时关闭的问题。
领取专属 10元无门槛券
手把手带您无忧上云