Foros del Web » Programando para Internet » Jquery »

jquery y append

Estas en el tema de jquery y append en el foro de Jquery en Foros del Web. Hola a todos, tengo un pequeño problema. Tengo una tabla a la que le añado con .append un <td>. y dentro tiene un <a> que ...
  #1 (permalink)  
Antiguo 04/12/2010, 18:26
 
Fecha de Ingreso: noviembre-2005
Mensajes: 222
Antigüedad: 19 años
Puntos: 2
jquery y append

Hola a todos, tengo un pequeño problema.

Tengo una tabla a la que le añado con .append un <td>. y dentro tiene un <a> que deberia usarse para ejecutar algo al clicarle. Mi problema es que no llega a hacer nada.

mi html
Código HTML:
<table id="tabla">
	<tbody>
	<tr id="titulos">
		<td>Nombre</td>
        <td>fecha</td>
        <td>Posición</td>
        <td>Acción</td>
  	</tr>
    </tbody>
</table>

Secundaria
<table id="secundaria">
	<tr>
    	<td>Nombre</td>
        <td>Fecha</td>
        <td>Autor</td>
        <td>Accion</td>
  	</tr>
    <tr id="Fila1">
    	<td>Texto 1a</td>
        <td>Texto 1b</td>
        <td>Texto 1c</td>
        <td id="elimina1"><a href="#" id="Fila1" class="boton">Añadir</a></td>
  	</tr>
    <tr id="Fila2">
    	<td>Texto 2a</td>
        <td>Texto 2b</td>
        <td>Texto 2c</td>
        <td id="elimina2"><a href="#" id="Fila2" class="boton">Añadir</a></td>
  	</tr>
</table> 
mi js

Código:
$(function(){  
	$('.boton').click(function(event) { 
		event.preventDefault();
		var ident;
		ident=this.id.replace('Fila','');
		$('#tabla > tbody:last').append('<tr id="mifila'+ident+'">'+$('#Fila'+ident).html()+'</tr>');
		$('#tabla #elimina' + ident).remove();
		$('#tabla #mifila' + ident).append('<td><a href="#" id="Quita'+ident+'" class="Quitar">Quitar</a></td>');
		$('#secundaria #Fila' + ident).css({ display: "none" });  
	});
	$('.Quitar').click(function(event) { 
	event.preventDefault();
		alert(this.id);
		var ident;
		ident=this.id.replace('quita','');
		alert(ident);
	});
});
gracias por la ayuda!
__________________
"Prefiero callar como un tonto, que hablar para confirmarlo"
Espectacular Portal en crecimiento: Artículos http://www.blorgia.com
  #2 (permalink)  
Antiguo 05/12/2010, 07:48
Avatar de tredio  
Fecha de Ingreso: noviembre-2008
Ubicación: Carabobo
Mensajes: 466
Antigüedad: 16 años
Puntos: 66
Respuesta: jquery y append

prueba asi:

Código Javascript:
Ver original
  1. $('.Quitar').live('click',function(event) {
  2.     event.preventDefault();
  3.         alert(this.id);
  4.         var ident;
  5.         ident=this.id.replace('quita','');
  6.         alert(ident);
  7.     });
__________________
Extension Google Chrome
dar las gracias no cuesta nada :D
  #3 (permalink)  
Antiguo 05/12/2010, 09:08
 
Fecha de Ingreso: noviembre-2005
Mensajes: 222
Antigüedad: 19 años
Puntos: 2
Respuesta: jquery y append

Cita:
Iniciado por tredio Ver Mensaje
prueba asi:

Código Javascript:
Ver original
  1. $('.Quitar').live('click',function(event) {
  2.     event.preventDefault();
  3.         alert(this.id);
  4.         var ident;
  5.         ident=this.id.replace('quita','');
  6.         alert(ident);
  7.     });
no conocia el metodo 'live'. Mil gracias, me has ayudado mucho
__________________
"Prefiero callar como un tonto, que hablar para confirmarlo"
Espectacular Portal en crecimiento: Artículos http://www.blorgia.com
  #4 (permalink)  
Antiguo 05/12/2010, 10:50
Avatar de tredio  
Fecha de Ingreso: noviembre-2008
Ubicación: Carabobo
Mensajes: 466
Antigüedad: 16 años
Puntos: 66
Respuesta: jquery y append

ok amigo, que bien que te haya funcionado.

Te explico por que no te funcionaba, tu estabas creando el evento antes de crear el objeto que respondia a ese evento en este caso el link, es por eso que el elemento recien creado no respondia al evento, y juso para eso es que sirve el live, para que incluso los objetos creados despues de la declaracion del evento respondan al mismo.

saludos.
__________________
Extension Google Chrome
dar las gracias no cuesta nada :D
  #5 (permalink)  
Antiguo 05/12/2010, 11:40
 
Fecha de Ingreso: noviembre-2005
Mensajes: 222
Antigüedad: 19 años
Puntos: 2
Respuesta: jquery y append

Cita:
Iniciado por tredio Ver Mensaje
ok amigo, que bien que te haya funcionado.

Te explico por que no te funcionaba, tu estabas creando el evento antes de crear el objeto que respondia a ese evento en este caso el link, es por eso que el elemento recien creado no respondia al evento, y juso para eso es que sirve el live, para que incluso los objetos creados despues de la declaracion del evento respondan al mismo.

saludos.
Sí, lo entendí cuando busqué info sobre el método live. Justo diste en el clavo.
__________________
"Prefiero callar como un tonto, que hablar para confirmarlo"
Espectacular Portal en crecimiento: Artículos http://www.blorgia.com

Etiquetas: append
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:36.