Foros del Web » Programando para Internet » Javascript » Frameworks JS »

[PROBLEMA] Callback Ajax

Estas en el tema de [PROBLEMA] Callback Ajax en el foro de Frameworks JS en Foros del Web. Buenos días, mi duda se sitúa en base a una función que tiene como objetivo validar desde javascript los valores de registro de un usuario ...
  #1 (permalink)  
Antiguo 14/05/2014, 08:19
 
Fecha de Ingreso: mayo-2014
Mensajes: 2
Antigüedad: 9 años, 11 meses
Puntos: 0
Pregunta [PROBLEMA] Callback Ajax

Buenos días, mi duda se sitúa en base a una función que tiene como objetivo validar desde javascript los valores de registro de un usuario en un formulario, es decir, caracteres para el nick, tamaño del mismo, mail correcto, password y repassword iguales, etc. Pero ademas de esto, en la misma función verifico que el nick y mail no existan como activos. Para esto hago un simple ajax, que consulte la db.

Mi problema es que el ajax esta en la función general, ejemplo:

Código:
function validarRegistro(nick,pass){
	if(nick.length < 3){
		alert('El nick debe tener mas de 3 caracteres');
		return false;
	}

	req = $.ajax({
		type: 'POST',
		url: 'ajax/funcionesvarias.php',
		data: {
			'accion':'validarNick',
			'nick': nick
		},
		success: function(data){
			if (data == "en uso"){
				alert('El nick ya esta en uso');
				return false;
			}
		}
	});

	//resto de la funcion 
}
Tiene un callback, que me informa si el nick esta en uso, y en ese caso, devuelve false, para salir de la función. Pero (creo) que al ser asincronico, si la respuesta tarda, el return llega mas tarde y la función ya finaliza, por lo cual, si esta en uso nunca lo se.

Alguien ve una posible solución?

pd: probe separando la validación de existencia en una función aparte (function validarNickExistente()) pero pasa lo mismo (me devuelve undefined, en lugar de un booleano).

Muchas gracias!!
  #2 (permalink)  
Antiguo 14/05/2014, 08:43
 
Fecha de Ingreso: mayo-2006
Ubicación: Bogotá
Mensajes: 2.061
Antigüedad: 17 años, 11 meses
Puntos: 50
Respuesta: [PROBLEMA] Callback Ajax

yo la separaria en otra funcion y pondria un else para que devuelva false enc aso de que pase algo malo. Adicional le pondria al ajax el async false creo que eso le ayudaria asolucionr su problema.
  #3 (permalink)  
Antiguo 15/05/2014, 07:31
 
Fecha de Ingreso: mayo-2014
Mensajes: 2
Antigüedad: 9 años, 11 meses
Puntos: 0
Respuesta: [PROBLEMA] Callback Ajax

Por si alguno, quedo estancado como yo, comento que encontré una posible solución al problema, no se si es la mas optima, pero anda jaja.

Lo que hice fue anidar los ajax, es decir, una verificación dentro de otra, colacandolas en los callbacks.

Saludos!

Etiquetas: ajax, callback, formulario, funcion, javascript, php, valor
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 21:04.