Hola, estoy haciendo una aplicación en jQuery que necesita hacer llamadas al servidor. Estoy utilizando .getJSON().
Mi problema es que necesito guardar la variable $(this) para dentro de la función de .getJSON() ya que si lo hago justo después, la ejecución no espera a que acabe la consulta al servidor y recibo resultados inesperados.
Os pongo un ejemplo de mi problema:
Código Javascript
:
Ver originalvar pregunta = $(this).find(".pregunta").html();
$.getJSON('proc.php', {'pregunta': pregunta}, function(datos) {
...
});
// La respuesta necesita los datos del servidor para responderse ccorrectamente.
var respuesta = $(this).find(".respuesta").html();
// ... (Cálculos)
El problema de este caso es que el servidor tarda más en responder, y la respuesta se calcula directamente sin los datos del servidor.
Código Javascript
:
Ver originalvar pregunta = $(this).find(".pregunta").html();
$.getJSON('proc.php', {'pregunta': pregunta}, function(datos) {
...
var respuesta = $(this).find(".respuesta").html();
});
La espera se puede solucionar así (poniendo el calculo de la respuesta dentro de la función), pero entonces pierdo la variable $(this) anterior.
Mi pregunta es: ¿puedo guardar la variable this para utilizarla fuera de contexto?