HTML5 Demostración y Ejemplos

Evitar cierre de ventana Modal Bootstrap

Evitar cierre de ventana Modal Bootstrap. cuando estamos desarrollando a veces se necesita que la ventana modal no se cierre fácilmente, es decir al hacer clic fuera de la ventana o usando la tecla escape.

Para esta opción en este articulo detallaremos todos los pasos a seguir desde la versión Bootstrap 3 hasta la Bootstrap 5.

Evitar cierre de ventana Modal Bootstrap

Vamos a detallar esta opción para diferentes versiones de este popular framework

Para Versión Bootstrap 3:

Desde HTML:

En el HTML justo donde tenemos el Botón o enlace que ejecuta la ventana modal debemos de integrar los siguientes atributos.

<a data-controls-modal="your_div_id" data-backdrop="static" data-keyboard="false" href="#">

Desde jQuery:

Por el contrario, si deseamos usar jQuery para este proceso debemos de agregar la siguiente línea de código.

$('#idDelModal').modal({backdrop: 'static', keyboard: false})

Otros atributos data:

Las ventanas modales de Bootstrap poseen atributos que podemos utilizar para personalizar resultados finales y aquí les dejare una tabla de opciones.

|----------------------------------------------------------------------|
| backdrop | Incluye un elemento modal-backdrop. Como alternativa,     |
|          | especifique `static` para un fondo que no cierre el       |
|          | modal en clic.                                            |
|----------|--------------------------------------------------------   |
| keyboard | Con valor `booleano: true` evita cerra el modal cuando    |
|          | se presiona la tecla `escape`                             |
|----------|--------------------------------------------------------   |
| show     | Muestra el modal cuando se inicializa                     |
|----------|--------------------------------------------------------   |
| remote   | deprecado desde v3.3.0. Carga desde una vía remota        |
|          | el contenido del modal                                    |
|----------|-----------------------------------------------------------|

En la documentación de Bootstrap, se pueden pasar opciones al momento de crear un diálogo modal.

$('#myModal').modal({backdrop: 'static', keyboard: false})
  • backdrop: Es booleano para establecer si se presenta un elemento de fondo. Alternativamente, se puede usar static para que aparezca pero no se cierre al hacer click.
  • keyboard: Es booleano para establecer si se cierra el modal al presionar la tecla  Esc.

Versión Bootstrap 4.6

Esta versión del Framework también soporta la opción de evitar el cierre de ventana, solo debemos a agregar el atributo en el modal data-backdrop="static" y con eso se evitará que el usuario cierre la ventana modal.

<div class="modal hide fade" data-keyboard="false" data-backdrop="static">

Bootstrap 5.2

Si estamos usando la última versión del framework podemos usar el atributo data-bs-target="#staticBackdrop" para evitar el cierre de ventana modal. Veamos ejemplo completo

<!-- Button trigger modal -->
<button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#staticBackdrop">
Launch static backdrop modal
</button>

Ventana Modal

<!-- Modal -->
<div class="modal fade" id="staticBackdrop" data-bs-backdrop="static" data-bs-keyboard="false" tabindex="-1" aria-labelledby="staticBackdropLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="staticBackdropLabel">Modal title</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
...
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
<button type="button" class="btn btn-primary">Understood</button>
</div>
</div>
</div>
</div>

Conclusión

En este artículo hemos aprendido a utilizar el atributo de Bootstrap llamado backdrop que es utilizado para evitar el cierre de la ventana modal.

Hemos aprendido a usar las opciones tanto en HTML, CSS y jQuery que posee este potencial framework.

Espero que esta explicación les ayude en sus proyectos web.

Nestor Tapia

Bloggero, amante de la programación PHP, innovador y me fascina compartir información. Desde que conocí el entorno informatico y el internet me llamó la atención la programación, Por tal motivo he creado mi blog BAULPHP.COM para compartir mis experiencias con todos ustedes. ¡Gracias por leerme!.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba