Foros del Web » Programando para Internet » Javascript » Frameworks JS »

los datos dentro de $.post se pierden

Estas en el tema de los datos dentro de $.post se pierden en el foro de Frameworks JS en Foros del Web. hola a todos tengo este código var a = "1"; $(document).ready(function(){ $.post('url', {data: algo}, function(data){ a = data; }); alert(a); }); esto me devuelve el ...
  #1 (permalink)  
Antiguo 18/05/2011, 07:04
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 10 meses
Puntos: 209
los datos dentro de $.post se pierden

hola a todos
tengo este código

var a = "1";
$(document).ready(function(){


$.post('url', {data: algo}, function(data){
a = data;
});


alert(a);

});

esto me devuelve el valor 1, es decir con el que la inicializé, sin embargo si dentro de la funcion pongo alert(data) me devuele correctamente el resultado, es como si perdiera el valor al salir de la función, alguna idea de como resolver esto, es que necesito tener el valor de esa función fuera de ella, es decir guardada en var a.
  #2 (permalink)  
Antiguo 18/05/2011, 09:55
Avatar de tredio  
Fecha de Ingreso: noviembre-2008
Ubicación: Carabobo
Mensajes: 466
Antigüedad: 16 años
Puntos: 66
Respuesta: los datos dentro de $.post se pierden

las peticiones ajax por defecto son asincronas, en este caso el alert, aunque esta lineas debajo de la funcion $.post, ocurre antes. El valor de a lo tienes que tomar dentro del callback del $.post
__________________
Extension Google Chrome
dar las gracias no cuesta nada :D
  #3 (permalink)  
Antiguo 18/05/2011, 09:57
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 10 meses
Puntos: 209
Respuesta: los datos dentro de $.post se pierden

gracias, pero si quiero almacenar el valor de a, para usarlo después no puedo entonces ???
  #4 (permalink)  
Antiguo 18/05/2011, 10:18
Avatar de tredio  
Fecha de Ingreso: noviembre-2008
Ubicación: Carabobo
Mensajes: 466
Antigüedad: 16 años
Puntos: 66
Respuesta: los datos dentro de $.post se pierden

dale el uso que necesitas dentro de la funcion de respuesta del $.post, tienes que seguir la secuencia, o puedes llamar a otra funcion dentro del callback del $.post para manipular esos datos.
__________________
Extension Google Chrome
dar las gracias no cuesta nada :D
  #5 (permalink)  
Antiguo 18/05/2011, 10:26
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 10 meses
Puntos: 209
Respuesta: los datos dentro de $.post se pierden

hmm, ya pruebo y te comento,
pero entonces me dices que no hay forma de guardar el resultado en una variable y usarlo luego ???
  #6 (permalink)  
Antiguo 18/05/2011, 13:51
Avatar de tredio  
Fecha de Ingreso: noviembre-2008
Ubicación: Carabobo
Mensajes: 466
Antigüedad: 16 años
Puntos: 66
Respuesta: los datos dentro de $.post se pierden

si puedes, pero a traves de funciones, algo asi:

Código Javascript:
Ver original
  1. $(document).ready(function(){
  2.  
  3. var a = "1";
  4.  
  5. $.post('url', {data: algo}, function(data){
  6.     a = data;
  7.     respuesta();
  8. });
  9.  
  10. function respuesta(){
  11.     alert(a);
  12. }
  13. });
__________________
Extension Google Chrome
dar las gracias no cuesta nada :D
  #7 (permalink)  
Antiguo 18/05/2011, 14:17
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 10 meses
Puntos: 209
Respuesta: los datos dentro de $.post se pierden

ah ok, un elemento a tener en cuenta, gracias...

Etiquetas: jquery
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 00:03.