I know there are several similar questions, but none of the solutions worked out: (
I have this function that receives data by parameter:
function funcao(valor) {
var a;
$.getJSON(/* aqui retorno de uma WebService*/, function (dados) {
if ("error" in dados) {
a = 0; //seria o true e false, mas não funcionaram também
return a;
} else {
/* se o WS está ok faz algo e então seria true */
a = 1;
return a;
}
});
}
I've already tried to treat return with
return true;
return 1;
return "true";
return 'true';
return a.val();
return a.value;
return a;
return !!a;
This in turn is used as follows:
function valida(){
if(funcao(dados)){
faz algo
} else if(funcao(dados)){
algo
}else{
algo
}
}
I've tried to handle if with
if(func(dados)){}
if(func(dados) == true){}
if(func(dados) === true){}
if(func(dados) == 1){}
if(func(dados) === 1){}
if(func(dados) === "1"){} //a parte de == ou === tentei também e vale para os demais
if(func(dados) === "true"){}
if(func(dados) === 'true'){}
if(func(dados).val()){}
if(func(dados).value){}
if(func(dados).value === true){}
if(func(dados).val() === true){}
All these attempts returned value undefined
I have read a lot of questions here from the stack itself and from other places, but all possible solutions did not work.
Thanks for the help!