Foros del Web » Programando para Internet » Javascript »

No me retorna valor la funcion

Estas en el tema de No me retorna valor la funcion en el foro de Javascript en Foros del Web. esta funcion me retorna valor de status = null; osea no me redeclara la variable dentro del if... Espero una manita gracias... @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código ...
  #1 (permalink)  
Antiguo 31/12/2011, 20:59
 
Fecha de Ingreso: febrero-2006
Mensajes: 16
Antigüedad: 18 años, 9 meses
Puntos: 1
Exclamación No me retorna valor la funcion

esta funcion me retorna valor de status = null; osea no me redeclara la variable dentro del if... Espero una manita gracias...


Código Javascript:
Ver original
  1. function validarNickUsuario(){
  2.  
  3. var status = null;
  4.  
  5. $.getJSON("/ajax/usuario/existeNick/?nic_usu=" + $("#nic_usu").get(0).value, function(data){
  6.                      if(data.existe=="true"){
  7.                      status = false;
  8.                     }else{
  9.                      status = true;
  10.                     }
  11.              });
  12.  
  13. return status;
  14.  
  15. }



el json funciona bien tieen los valores del tipos:

Código json:
Ver original
  1. {"existe" : "false"}
  #2 (permalink)  
Antiguo 31/12/2011, 21:40
Avatar de Dnielf  
Fecha de Ingreso: diciembre-2008
Ubicación: 127.0.0.1
Mensajes: 72
Antigüedad: 15 años, 11 meses
Puntos: 14
Respuesta: No me retorna valor la funcion

Siempre retornará null (a menos que la petición GET sea demasiado rápida) puesto que en la línea 5 hay un callback (el segundo parámetro), es decir getJson se ejecuta en un segundo plano y se pasa inmediatamente a la línea 13, las asignaciones de valores a status se realizarán una vez que se terminé la petición GET al primer parámetro (/ajax/usuario/existeNick/?nic_usu= ...) . Las operaciones pendientes deben ir dentro del callback y advierto que no puedes colocar return status dentro del mismo.

Espero haberte ayudado.

Etiquetas: ajax, funcion, js, retorna
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:55.