En este tutorial vamos a enviar datos a una ventana modal. Esto nos sirve para manejar datos dinámicamente y solo tener una ventana modal, en vez de tener múltiples y hacer más pesada la página. Cabe aclarar que esto es dependiendo de las necesidades de cada quien. Te mostraré dos opciones de como lo puedes hacer.
Opción 1
Agregando los botones
Vamos a agregar 3 botones para abrir la misma ventana modal, en esta ocasión usaré Bootstrap para facilitar el CSS de la creación del modal.
El valor que vamos a enviar será el que está en el atributo “data-info” tú puedes pasar un array, un número o el valor que necesites.
Creamos la ventana modal
En la etiqueta div con la clase modal-body pondremos la información que mandaremos.
Titulo de la ventana
Obtener los datos con jQuery
Creamos la función click() para enviar los datos, en este ejemplo solo estamos enviando la información que se encuentra en el atributo data-info. Cada vez que se da click en un botón se envía la respectiva info.
$(document).ready(function () {
$(".btn-primary").click(function () {
let info = $(this).data('info');
$('.modal-body').html(info);
console.log(info);
});
});
Resultado
Juntamos el ejemplo anterior y veremos el resultado.
See the Pen Enviar datos – opcíón 1 by Alam (@alamdtech) on CodePen.
Opción 2
Agregando los botones
La estructura se ve muy parecida a la opción 1, pero la diferencia es el evento onclick que está en cada botón, de esta manera estamos ejecutando la función obtenerInfo(datos, objetivo).
Creamos la ventana modal
En la etiqueta div con la clase modal-body pondremos la información que mandaremos.
Titulo de la ventana
Obtener los datos con Jquery
La función obtenerInfo() recibe 2 parámetros:
- Datos: La información que se envía al modal.
- Objetivo: Donde se mostrará la información del primer parámetro.
function obtenerInfo(datos, objetivo) {
$(`.${objetivo}`).html(datos);
}
Resultado
Juntamos el ejemplo anterior y veremos el resultado.
See the Pen Enviar datos – opcíón 2 by Alam (@alamdtech) on CodePen.