Hola gente del foro!! cómo están??
Estoy haciendo un sistema en el que muestro la lista de resultados de la BD en un div, y al cargar un nuevo registro o editar uno de los existentes, ese div se recarga mostrando, se vuelve a consultar a la BD y muestra los datos actualizados.
El problema es que al recargar ese div, dejan de funcionar los botones (editar y eliminar) que se encuentran dentro.
Estuve leyendo mucho y entendí que al recargar el div se cargan nuevos elementos que no estan en el DOM, por eso jQuery no identifica los eventos para estos elementos.
Encontré la función .live() pero tampoco logro hacerlo funcionar, o no tengo claro como aplicarla.
En un principio tenía este código:
Código HTML:
$(document).ready(function(){
$('a.editarCarrera').click(function(){
var idCarrera = $(this).attr('rel');
$('.editarAbierto').slideUp('fast');
$('div#editarCarrera'+idCarrera).slideDown('fast', function(){
$(this).addClass('editarAbierto');
});
return false;
});
//EL RESTO DEL CÓDIGO
});
Y con eso funciona perfecto hasta que recargue el div.
Cuando encontré .live() probé de la siguiente manera
Código HTML:
$(document).ready(function(){
$('a.editarCarrera').live('click', function(){
var idCarrera = $(this).attr('rel');
$('.editarAbierto').slideUp('fast');
$('div#editarCarrera'+idCarrera).slideDown('fast', function(){
$(this).addClass('editarAbierto');
});
return false;
});
//EL RESTO DEL CÓDIGO
});
Según lo que leí esa es la sintáxis de .live(), pero no funciona. Siempre que recargo el div, los botones dejan de funcionar.
Alguien identifica qué es lo que estoy haciendo mal??
Espero que alguien pueda ayudarme. Desde ya muchísimas gracias!!