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 });
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 });
Alguien identifica qué es lo que estoy haciendo mal??
Espero que alguien pueda ayudarme. Desde ya muchísimas gracias!!