Estoy usando la API de jQuery $.getJSON()
para recuperar datos de una URL determinada para un conjunto de utilidades. Realmente me gustaría encontrar una forma de reutilizar el código (todo es exactamente lo mismo) para cada utilidad. Dado que el ciclo se está ejecutando sin respeto a la llamada ajax, no he podido encontrar la forma de retener el valor del ciclo.Asynchronicity dentro de un bucle
Esa descripción chupa, lo sé, por lo here'a un fragmento de código que define un poco mejor:
var utility_types = [ 'Electricity', 'Gas', 'Water' ];
/** Retrieve known utility providers for the given zip code */
for(var i = 0; i < utility_types.length; i++) {
var type = utility_types[i];
$.getJSON('/addresses/utilities/' + zip + '/' + type + '.json', null, function(data, status) {
alert('Processing ' + type);
});
}
Tengo que encontrar una manera de pasar el valor de tipo en la devolución de llamada para que pueda aplicar la sintaxis correcta Sin eso, los 3 bucles se ejecutan en contra de la utilidad "Agua". Sé por qué es no trabajando, solo me pregunto si hay una solución razonable.
Gracias.