Função não retorna valor.
Bom dia Pessoal.
Estou desenvolvendo uma integração com backoffice de agência de viagens.
Tenho um problema em uma função que fiz (gambiarra admito) em Jquery com javascript.
A função pegaItinerarios:
Se eu for nesta função na linha de retorno e exibir na tela, ela me retorna o valor corretamente.
Porém se eu chamar esta função depois, e atribuir o valor retornado a uma variável ou até exibir na tela, ela me retorna nula.
Para ficar mais fácil, aqui abaixo vou postar os códigos. Lembrando que os endereços estão coerretos, e eu não posta-los aqui,
function pegaItinerarios(id){
if(id != null){
id2 = new String(id)
id = Right(id2, id2.length - 1);
var origem = "";
var destino = "";
$.ajax({
type: 'get',
// a url do xml
url : "#", //Endereço da Página Ajax
dataType : "xml", // Tipo de dados
success : function(xml){ // se terminar com sucesso
$(xml).find("multiRef").each(function(){ // Looping que varre o xml na Tag multiRef
if($(this).attr("id") == id){
origem += $(this).find("origin").text()
destino += $(this).find("destination").text()
}
});return origem;
}
});
}
}
A parte da função que chama a pegaItinerarios e atribui o valor.
Porém retorna nulo.
$(this).find("itins").each(function(){
var id = $(this).attr("href");
itinerario = pegaItinerarios(id);
});
E aqui uma breve explicação do XML.
Existe uma tagf que se chama MultRef que representa uma venda.
Dentro desta tag mulRef existe uma tag em formato de array chamada itins.
E nela temos os ids dos itinerários respectivos.
Como no trecho abaixo.
<multRef>
...
<itins>
<itins href="#id2"></itins>
<itins href="#id3"></itins>
</itins>
...
</multRef>
Pessoal, desda já agradeço pela ajuda.
Obrigado.
Discussão (7)
Carregando comentários...