Foros del Web » Programando para Internet » Jquery »

JQuery, elementos agregados despues, no me interpretan las funciones

Estas en el tema de JQuery, elementos agregados despues, no me interpretan las funciones en el foro de Jquery en Foros del Web. Hola amigos. Veran, en toda la pagina tengo un elemento NATO con la clase select_regalos <select name="miselect" class="select_regalos"> <option value=1>Uno</option> </select> Mediante jquery y un ...
  #1 (permalink)  
Antiguo 06/03/2015, 17:09
Avatar de ZoroRoronoa  
Fecha de Ingreso: marzo-2011
Ubicación: California, USA
Mensajes: 824
Antigüedad: 13 años, 1 mes
Puntos: 116
JQuery, elementos agregados despues, no me interpretan las funciones

Hola amigos.

Veran, en toda la pagina tengo un elemento NATO con la clase select_regalos

<select name="miselect" class="select_regalos">
<option value=1>Uno</option>
</select>

Mediante jquery y un link "agregar mas select", agrego con la funcion $.insertBefore, mas select, de la manera que si agrego dos mas, tendre 3 en total

<select name="miselect" class="select_regalos">
<option value=1>Uno</option>
</select>
<select name="miselect" class="select_regalos">
<option value=1>Uno</option>
</select>
<select name="miselect" class="select_regalos">
<option value=1>Uno</option>
</select>

los 3 con la misma clase.

El problema que tengo una funcion que detecta el cambio $(".select_regalos").change( function() { ... });

y solo me funciona con el primer select, es decir, el Nato, cuando hago un cambio con los otros dos select agregados "DESPUES", la funcion change no es detectada.

Una manita amigos
__________________
Programador jQuery & PHP
  #2 (permalink)  
Antiguo 06/03/2015, 17:45
 
Fecha de Ingreso: enero-2009
Ubicación: España
Mensajes: 786
Antigüedad: 15 años, 3 meses
Puntos: 9
Respuesta: JQuery, elementos agregados despues, no me interpretan las funciones

Pues no sé porqué no te funciona, sin más código poco se puede hacer. He estado haciendo unas pruebas y a mi me detecta el cambio con cualquiera de los select añadidos posteriormente

Código Javascript:
Ver original
  1. $(document).ready(function() {
  2.     $(document).on('click','#add', function() {
  3.         $('body').append('<select name="miselect" class="select_regalos"><option value=1>Uno</option><option value=2>Dos</option></select>');
  4.     });
  5.    
  6.     $(document).on('change','.select_regalos', function() {
  7.         alert('cambiado');
  8.     });
  9. });

Código HTML:
Ver original
  1. <a href="javascript:void(0)" id="add">Añadir</a>
  2. <select name="miselect" class="select_regalos">
  3. <option value=1>Uno</option>
  4. <option value=2>Dos</option>
  #3 (permalink)  
Antiguo 06/03/2015, 19:09
Avatar de rottenp4nx  
Fecha de Ingreso: octubre-2012
Ubicación: Santiago
Mensajes: 417
Antigüedad: 11 años, 6 meses
Puntos: 36
Respuesta: JQuery, elementos agregados despues, no me interpretan las funciones

Resumen: http://api.jquery.com/on/
  #4 (permalink)  
Antiguo 06/03/2015, 21:34
Avatar de ZoroRoronoa  
Fecha de Ingreso: marzo-2011
Ubicación: California, USA
Mensajes: 824
Antigüedad: 13 años, 1 mes
Puntos: 116
Respuesta: JQuery, elementos agregados despues, no me interpretan las funciones

Exacto, nose cual es la diferencia, pero la funcion (evento change) como tal, no me va.
Debo usar el evento on()

Código Javascript:
Ver original
  1. $.on('change','...', function() {
  2.    { ..... }
  3. });

Gracias por sus respuestas. TEMA CERRADO
__________________
Programador jQuery & PHP

Etiquetas: elementos, funcion, funciones, javascript, select
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 08:59.