JQuery - append JQuery volver a enlazar elementos

   
Vista:

append JQuery volver a enlazar elementos

Publicado por Davan Palma (2 intervenciones) el 16/05/2012 18:48:53
Buenas tardes.
tengo una tabla con tres filas originales y al hacerle click en una de ellas ( id="prueba") se agregar una nueva fila.
Hasta ahora todo ok, pero lo que quiero es que al acer click en las filas creadas también pueda ejecutar algún evento, por ejemplo si hago clik en la fila <span class="calse">copias1</span> me sale una alerta con su html pero si quiero hacer click en la fila que se creo con JQuery ya no me funciona.
Por que???? AYUDA POR FAVOR

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<table id="tabla" >
    <tr id="prueba"><td><span>original</span> </td></tr>
    <tr><td><span class="calse">copias1</span> </td></tr>
     <tr><td><span class="calse">copias2</span> </td></tr>
</table>
 
 
<script type="text/javascript" src="recursos/js_css/jQuery.js"></script>
<script type="text/javascript">
   $(document).ready(function() {
   var u=2;
$("#prueba").click(function(){
    u+=1;
   $("#tabla").append('<tr><td><span class="calse">copias'+u+'</span> </td></tr>');
});
 
  $("span[class='calse']").click(function () {
       alert($(this).html());
     });
 
  } );
</script >
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

append JQuery volver a enlazar elementos

Publicado por xve (557 intervenciones) el 16/05/2012 22:11:51
Hola Davan, te comento.... jquery, unicamente funciona con el DOM que encuentra cuando es creado, es decir si creas una instrucción de jquery, y a posteriori añades por ejemplo un div, ese div no lo reconocera las instrucciones creadas con anterioridad, ya que dicho div no estava cuando se crearos las instrucciones de jquery.

Para ello, tienes que volver a generar dicha instrucción... por ejemplo, prueba a poner así el código:

1
2
3
4
5
6
7
8
9
10
11
12
13
<script type="text/javascript">
   $(document).ready(function() {
   var u=2;
   $("#prueba").click(function(){
      u+=1;
      $("#tabla").append('<tr><td><span class="calse">copias'+u+'</span> </td></tr>');
 
      $("span[class='calse']").click(function () {
         alert($(this).html());
      });
   });
});
</script >
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

append JQuery volver a enlazar elementos

Publicado por davan palma (2 intervenciones) el 16/05/2012 22:56:26
Gracias xve.
funciona ahora voy a ver si puedo implementar eso en mi proyecto.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar