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

Cargar resultado de $.post en variable

Estas en el tema de Cargar resultado de $.post en variable en el foro de Frameworks JS en Foros del Web. Buenas, estoy usando JQuery para en un boton añadir una linea de una tabla y en cada celda me gustaría cargar un combo con unos ...
  #1 (permalink)  
Antiguo 19/06/2011, 16:34
 
Fecha de Ingreso: mayo-2005
Mensajes: 16
Antigüedad: 19 años, 6 meses
Puntos: 0
Cargar resultado de $.post en variable

Buenas, estoy usando JQuery para en un boton añadir una linea de una tabla y en cada celda me gustaría cargar un combo con unos datos de la base de datos. El problema es cuando intento hacer la primera llamada al .php que carga el 1er combo, por ejemplo clientes:

$.post("carga_clientes.php", {"edad": '20'}, function(data){
alert(data);
});

hice eso de prueba y si se me muestra el codigo html, pero la variable data es local a la funcion con lo que no puedo sacarla de ahi y quiero hacer varias llamadas $.post cada una cargando un combo distinto.

No se como hacer algo por el estilo:

var comboCliente = $.post("carga_clientes.php", {"edad": '20'});
var comboProveedor = $.post("carga_cproveedores.php", {"pais": 'España'});
var comboCiudad = $.post("carga_ciudades.php", {"pais": 'España'});

var linea = "<tr><td>" + comboCliente + "</td><td>" + comboProveedor + "</td><td>" + var comboCiudad + "</td></tr>";

donde como veis haría varias llamadas a $.post para cargar el resultado de los archivos en unas variables que despues posiciono dentro del código donde quiera.

Alguno me indica como podría hacer algo parecido ??

gracias de antemano.
  #2 (permalink)  
Antiguo 19/06/2011, 20:28
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 3 meses
Puntos: 1532
Respuesta: Cargar resultado de $.post en variable

declara una variable global, fuera de la función, con var, tendrá acceso fuera

var variable;
$.post("carga_clientes.php", {"edad": '20'}, function(data){
variable = data;
});
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 20/06/2011, 13:11
Avatar de tredio  
Fecha de Ingreso: noviembre-2008
Ubicación: Carabobo
Mensajes: 466
Antigüedad: 16 años
Puntos: 66
Respuesta: Cargar resultado de $.post en variable

podrias usar deferred's


Código Javascript:
Ver original
  1. $.when( $.post("carga_clientes.php", {"edad": '20'}), $.post("carga_cproveedores.php", {"pais": 'España'}), $.post("carga_ciudades.php", {"pais": 'España'}))
  2. .then(function(dataCliente, dataProveedor, dataCiudad){
  3.     var comboCliente = dataCliente[0],
  4.               comboProveedor = dataProveedor[0],
  5.               comboCiudad = dataCiudad[0], linea = '';
  6.  
  7.         linea = "<tr><td>" + comboCliente + "</td><td>" + comboProveedor + "</td><td>" + var comboCiudad + "</td></tr>";
  8.  
  9.         alert(linea)
  10. });

PD: no he probado el codigo pero pienso que te puede servir.
__________________
Extension Google Chrome
dar las gracias no cuesta nada :D
  #4 (permalink)  
Antiguo 20/06/2011, 14:37
 
Fecha de Ingreso: mayo-2005
Mensajes: 16
Antigüedad: 19 años, 6 meses
Puntos: 0
Respuesta: Cargar resultado de $.post en variable

antes de nada gracias por contestar ^^

maycolalvarez la variable "variable" de fuera de la funcion y la de dentro de la funcion aunque se llamen iguales no son la misma con lo que la asignacion de data a variable dentro del function acabaría muriendo en la linea siguiente que es cuando termina la function (ya que es una variable local a la funcion). De todas formas, antes de postear lo probé y no va pero gracias de todos modos.

tredio, el codigo parece interesante, no lo conocía así que voy a probarlo y ya comento si he podido solventarlo así....

otra forma mas 'chusquera' que se me habia ocurrido era asignarle a cada TD una ID (numeracion dinámica ya que las lineas se van agregando tantas como se quieran dinámicamente claro), y despues hacer el $.post y dentro del function ya poner $("#" + ID).html(data), un post y asignacion para cada TD... (creo era mi ultima alternativa que creo que funcionaría...)
  #5 (permalink)  
Antiguo 20/06/2011, 15:11
 
Fecha de Ingreso: mayo-2005
Mensajes: 16
Antigüedad: 19 años, 6 meses
Puntos: 0
Respuesta: Cargar resultado de $.post en variable

lo acabo de probar y va muy bien, muchas gracias ^^
  #6 (permalink)  
Antiguo 20/06/2011, 17:17
Avatar de tredio  
Fecha de Ingreso: noviembre-2008
Ubicación: Carabobo
Mensajes: 466
Antigüedad: 16 años
Puntos: 66
Respuesta: Cargar resultado de $.post en variable

ok, de nada, pero te aconsejo que leas sobre deferred en la api de Jquery, es bastante interesante.
__________________
Extension Google Chrome
dar las gracias no cuesta nada :D

Etiquetas: post, resultados, variables
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 01:36.