SELECT DENTRO DE UM LOOP

MLALEX 06/11/2015 20:10:50
#453593
To quase conseguindo!!!

Consegui fazer o loop funcionar redondinho, só que para cada resultado preciso associá-lo ao seu endereço de origem. Ou seja, mando pesquisar o Endereço 1 o resultado deveria vir Endereço 1 = Resultado 1. Só que as variáveis declaradas no javascript não funcionam dentro do jQuery. Veja meu código:

 <script type=[Ô]text/javascript[Ô]>

function PesquisarCoordenadas(conteudo) {
var ArrayList = conteudo.split([Ô];[Ô])

for (var idx in ArrayList) {
var geocoder = new google.maps.Geocoder();
var endereco = ArrayList[idx];
geocoder.geocode({ [ô]address[ô]: endereco }, function (results, status) {
if (status == google.maps.GeocoderStatus.OK) {
jQuery.ajax({
type: [Ô]GET[Ô],
url: [Ô]Aproxima.ashx[Ô],
data: [Ô]param=[Ô] + results[0].geometry.location,
success: function (data) {
$i = 0
for ($i = 0; $i < data.length; $i++) {
if (($i + 1) == data.length) {
document.getElementById([ô]<%=TxtMateriais.ClientID%>[ô]).value = document.getElementById([ô]<%=TxtMateriais.ClientID%>[ô]).value + endereco + [Ô] = [Ô] + data[$i].Materiais // AQUI QUE A VARIÁVEL ENDERECO CHEGA VAZIA
}
},
error: function (data) {
alert([ô]Erro na função data[ô]);
}
});
}
});
}
}
</script>


Parece que o loop roda todo primeiro e só depois chegam os resultados. Se for isso, a variável [Ô]endereco[Ô] já estará vazia quando o resultado procurar por ela.

A questão então é como associar cada endereço a sua reposta???
MLALEX 07/11/2015 16:11:32
#453606
Não tem jeito. O loop vai sempre terminar antes dos resultados. Então a solução é SÓ CONTINUAR O LOOP QUANDO CHEGAR O RESULTADO. Mas como fazer isso em javascript? Só para dar uma idéia do que eu quero, se fosse em VB o conceito seria assim:


Continua:
if i = NúmeroDeArrays then exit Sub

[ô]Aqui o código da pesquisa com o ArrayList(i)

if ResultadoDaPesquisa = [Ô]OK[Ô] then
i = i + 1
GoTo Continua
end if


Dessa forma a busca só continua depois que chegar o resultado. Como faço isso em javascript???
MLALEX 07/11/2015 21:54:57
#453613
é... realmente existem 1001 maneira de se fazer Neston!!!

Resolvi da seguinte forma. Sem Loop. Criei duas funções iguais. Quando chega no final de qualquer uma delas, retiro o endereço que foi pesquisado e chama a outra com os endereços restantes. Uma função chamando a outra até não restar mais nenhum endereço.

FUNCIONOU!!!!

Valeu gente!!!
Página 2 de 2 [13 registro(s)]
Tópico encerrado , respostas não são mais permitidas