Iterando através de uma matriz ao executar uma solicitação para cada entrada
Aqui está o meu problema. Eu tenho uma matriz contendo o nome das cidades para as quais preciso pesquisar o clima. Então, eu estou percorrendo cada cidade e realizando uma solicitação AJAX para recuperar o clima.
var LOCATION = 'http://www.google.com/ig/api?weather=';
$( document ).ready( function() {
for( var cityIdx = 0; cityIdx < cities.length; cityIdx++ ) {
$.ajax({
type: 'GET',
url: LOCATION + cities[ cityIdx ],
dataType: 'xml',
success: function( xml ) {
if( $( xml ).find( 'problem_cause' ) != 0 ) {
// Do what I want with the data returned
var weather = $( xml ).find( 'temp_c' ).attr( 'data' );
}
}
});
}
});
O problema que encontro é que, na função de sucesso, não consigo acessar o nome da cidade (por cidades [cityIdx]). Inseri um alert () no loop for e na função success e parece que o loop é executadocities.length vezes, recebo os alertas da função de sucesso. Meu objetivo é simplesmente percorrer cada cidade, obtendo o clima e mostrando na minha página, juntamente com o nome da cidade associada.
Além disso, o que você sugere que eu devo fazer para separar o conteúdo da apresentação?
Obrigado. :)