python测试开发django-187.Bootstrap模态框(modal)如何在关闭时触发事件


前言

Bootstrap 模态框 (modal) 在关闭时,如何触发一些事件?比如重置表单,或者重置表单的校验。
Bootstrap 模态框 (modal) 提供了4个显示和隐藏模态框的事件。这些事件可在函数中当钩子使用。

modal 事件

下表列出了模态框中要用到事件。这些事件可在函数中当钩子使用。

事件 描述 实例
show.bs.modal 在调用 show 方法后触发。 $('#identifier').on('show.bs.modal', function () {// 执行一些动作...})
shown.bs.modal 当模态框对用户可见时触发(将等待 CSS 过渡效果完成)。 $('#identifier').on('shown.bs.modal', function () {// 执行一些动作...})
hide.bs.modal 当调用 hide 实例方法时触发。 $('#identifier').on('hide.bs.modal', function () { // 执行一些动作...})
hidden.bs.modal 当模态框完全对用户隐藏时触发。 $('#identifier').on('hidden.bs.modal', function () {// 执行一些动作...})

hide 触发

当点击隐藏模态框的时候触发

当点击右上角x按钮,或者点取消的时候调用hide.bs.modal会触发


在调用hide方法时候也会触发

$('#myModal').modal('hide')

hidden 完全隐藏模态框触发

hide.bs.modal 是模态框消失之前触发
hidden.bs.modal是模态框完全消失后触发


关闭模态框销毁校验

模态框在关闭的时候可以执行重置校验,关于重置校验方法,可以参考前面这篇

$(function() {
    $('#myModal').on('hidden.bs.modal', function() {
        // 销毁校验
        var $form = $('#modal-form');
        $form.data('formValidation').destroy();
        $form.data('formValidation', null);
        // 重新调用校验方法
        validate_module_form('#modal-form')
   })
});