Foros del Web » Programando para Internet » Jquery »

cambiar funcion jquery que no funciona en contenido cargado de ajax

Estas en el tema de cambiar funcion jquery que no funciona en contenido cargado de ajax en el foro de Jquery en Foros del Web. hola forer@s creo que este tema ya esta un poco trillado , pero yo no se como adaptar mi funcion para que funcione con contenido ...
  #1 (permalink)  
Antiguo 01/11/2012, 14:55
Avatar de catpaw  
Fecha de Ingreso: mayo-2010
Ubicación: xalapa
Mensajes: 856
Antigüedad: 14 años, 6 meses
Puntos: 23
cambiar funcion jquery que no funciona en contenido cargado de ajax

hola forer@s

creo que este tema ya esta un poco trillado , pero yo no se como adaptar mi funcion para que funcione con contenido cargado por ajax

lo que he leido es que en lugar de usar bind se use live y de hecho ya lo he probado en otras funciones y si queda bien, pero que se hace en el caso de tener una funcion como esta:

Código Javascript:
Ver original
  1. $('#collapser').jqcollapse({
  2.     slide: true,
  3.     speed: 200
  4. });

ya probé sin el document ready y agregando en su lugar $(function() { pero tampoco jala

y aqui por ejemplo como le podria adaptar un live?? o que funcion o como??

gracias
  #2 (permalink)  
Antiguo 01/11/2012, 18:35
Avatar de hackjose  
Fecha de Ingreso: abril-2010
Ubicación: Edo Mexico
Mensajes: 1.178
Antigüedad: 14 años, 7 meses
Puntos: 131
Respuesta: cambiar funcion jquery que no funciona en contenido cargado de ajax

Código Javascript:
Ver original
  1. $.ajax({type: "POST",url: "some.php"}).done(function(msg){$("#collapser").text(msg);});
  #3 (permalink)  
Antiguo 02/11/2012, 15:18
Avatar de catpaw  
Fecha de Ingreso: mayo-2010
Ubicación: xalapa
Mensajes: 856
Antigüedad: 14 años, 6 meses
Puntos: 23
Respuesta: cambiar funcion jquery que no funciona en contenido cargado de ajax

hola hackjose, disculpa pero no entiendo tu ejemplo

para que me serviría meter la función dentro del post?

cabe mencionar que el envió de datos los hago con ajax puro, no con jquery ajax, aunque la función que no me funciona después de cargar esos datos si es jquery por eso puse el post aquí.

si me pudieras explicar tu ejemplo, por favor

gracias
  #4 (permalink)  
Antiguo 03/11/2012, 11:36
Avatar de hackjose  
Fecha de Ingreso: abril-2010
Ubicación: Edo Mexico
Mensajes: 1.178
Antigüedad: 14 años, 7 meses
Puntos: 131
Respuesta: cambiar funcion jquery que no funciona en contenido cargado de ajax

Bueno lo que entendi es que quieres obtener contenido con ajax y dicho contenido colocarlo en algun elemento por ejemplo un div, el problema es que cuando el DOM se carga por completo(ready), el contenido ajax todavia no lo hemos obtenido.

Eso es lo que entendi y bueno el evento ready lo puedes manipular con holdReady

Podrias poner algo como
Código Javascript:
Ver original
  1. if(xml)
  2. {
  3. $.holdReady(false);
  4. }
  5.  
  6. $(document).ready(function(){//aqui haces el inner HTML o lo que vayas a hacer con el contenido ajax});

xml es la respuesta Ajax y meramente decimos si ya esta la respuesta, entonces lanza el evento ready o igual ese holdReady lo podrias poner en el metodo done

Espero haberte ayudado

Saludos
  #5 (permalink)  
Antiguo 04/11/2012, 13:17
Avatar de catpaw  
Fecha de Ingreso: mayo-2010
Ubicación: xalapa
Mensajes: 856
Antigüedad: 14 años, 6 meses
Puntos: 23
Respuesta: cambiar funcion jquery que no funciona en contenido cargado de ajax

hola hackjose, creo que no me he dado a entender, :S

Mi problema no es que no se vea el contenido que cargo, eso me funciona ok, mi problema es que tengo una función de jquery que declaro:

Código Javascript:
Ver original
  1. $('#collapser').jqcollapse({
  2.     slide: true,
  3.     speed: 200
  4. });

esta función lo que hace es que permite ocultar/mostrar el contenido de listas <ul></ul>

despues, tengo un contenido asi:

Código HTML:
Ver original
  1.   <ul id="collapser">
  2.      <li>valor 1</li>
  3.      <li>valor 2</li>
  4.      <li>
  5.           valor 3
  6.          <ul>
  7.               <li>valor 3.1</li>
  8.          </ul>
  9.      </li>
  10.   </ul>
  11. </body>

Al principio funciona muy bien, después cuando cargo el contenido con ajax (que es el mismo que al del principio solo con valores direfentes) ya no le hace caso a la funcion jqcollapse
  #6 (permalink)  
Antiguo 05/11/2012, 12:12
Avatar de catpaw  
Fecha de Ingreso: mayo-2010
Ubicación: xalapa
Mensajes: 856
Antigüedad: 14 años, 6 meses
Puntos: 23
Respuesta: cambiar funcion jquery que no funciona en contenido cargado de ajax

Parece una tonteria pero sigo con este detalle, se me ocurre una forma pero no se como implementarla,

Como seria la sintaxis para meter la funcion siguiente dentro de un live?

Código Javascript:
Ver original
  1. $('#collapser').jqcollapse({
  2.     slide: true,
  3.     speed: 200
  4. });

gracias

Etiquetas: ajax, cargado, contenido, funcion
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 17:43.