我有以下模态
<div class="modal fade" id="my-modal">
<div class="modal-dialog modal-container vertically-centered">
<div class="modal-content">
<!-- Modal Header -->
<div class="modal-header">
<button type="button" class="close" id="close-modal" data-dismiss="modal">
</div>
<!-- Modal body -->
<div class="modal-body"> </div>
<!-- Modal footer -->
<div class="modal-footer">
<button type="button" id="my-btn" data-dismiss="modal">Create</button>
</div>
</div>
</div>
</div>
我在'my-btn'上有一个点击监听器
$("#my-btn").click(function () {
doSomething();
});
我已经定义了hidden.bs.modal事件以关闭模式
$("#my-modal").on('hidden.bs.modal', function () {
resetSomething();
});
当我单击“创建”按钮时,如何确保先调用doSomething()
然后先调用resetSomething()
?
答案 0 :(得分:0)
通过JavaScript隐藏模式。 https://getbootstrap.com/docs/4.5/components/modal/#via-javascript
function doSomething() {
console.log("doSomething");
}
function resetSomething() {
console.log("resetSomething");
}
$("#my-btn").click(function() {
doSomething();
resetSomething();
$("#my-modal").modal('hide');
});
$("#my-modal").on('hidden.bs.modal', function() {
console.log("Modal closed");
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/css/bootstrap.min.css">
<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/js/bootstrap.bundle.min.js"></script>
<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#my-modal">
Launch modal
</button>
<div class="modal fade" id="my-modal">
<div class="modal-dialog modal-container vertically-centered">
<div class="modal-content">
<!-- Modal Header -->
<div class="modal-header">
<button type="button" class="close" id="close-modal" data-dismiss="modal">
</div>
<!-- Modal body -->
<div class="modal-body"> </div>
<!-- Modal footer -->
<div class="modal-footer">
<button type="button" class="btn btn-primary" id="my-btn">Create</button>
</div>
</div>
</div>
</div>