Foros del Web » Programando para Internet » Javascript »

como preguntar si funcion retorno false

Estas en el tema de como preguntar si funcion retorno false en el foro de Javascript en Foros del Web. Buenas y gracias por su tiempo de antemano: Tengo una función de js. que antes de enviar un formulario hace una serie de validaciones, una ...
  #1 (permalink)  
Antiguo 25/07/2010, 13:23
Avatar de fast_10  
Fecha de Ingreso: abril-2010
Ubicación: Desde aquí o desde allá
Mensajes: 16
Antigüedad: 14 años
Puntos: 0
como preguntar si funcion retorno false

Buenas y gracias por su tiempo de antemano:

Tengo una función de js. que antes de enviar un formulario hace una serie de validaciones, una de estas validaciones es una función que verifica la existencia previa de un registro, esto lo efectuó gracias a ajax:
Código Javascript:
Ver original
  1. function envio_form(envio_dato){
  2.     f=nombre_formulario;
  3.     if(!compruebo_existencia_registro(envio_dato)){//<-funcion q valida existencia
  4.                  alert('registro ya existe');
  5.                  return false;//para que no envie el formulario
  6.     }
  7.     f.Dato.value=envio_dato;
  8.     f.submit();
  9. }
la funcion que utiliza ajax es la sgte:
Código Javascript:
Ver original
  1. function compruebo_existencia_registro(envio_dato){
  2.    
  3.     //el blabla correspondiente
  4.     if(ajax.responseText=='existe'){
  5.         return false;
  6.     }else{
  7.         return true;
  8.     }
  9. }
Mi consulta es la sgte.¿Como hago para que la condición if(!compruebo_existencia_registro(envio_dato)) sepa que lo que la función que utiliza ajax retorna un false o true y al reconocerlo envié un alert que diga que registro ya existe sin permitir el envió del formulario, por motivos obvios?
  #2 (permalink)  
Antiguo 25/07/2010, 13:37
 
Fecha de Ingreso: mayo-2003
Mensajes: 866
Antigüedad: 21 años
Puntos: 0
Respuesta: como preguntar si funcion retorno false

Mira a ver si te vale:


function envio_form(envio_dato){
f=nombre_formulario;
if(!compruebo_existencia_registro(envio_dato)){
//<-funcion q valida existencia
alert('registro ya existe');
return false;
//para que no envie el formulario
} else {
f.Dato.value=envio_dato;
f.submit();
}

}
  #3 (permalink)  
Antiguo 25/07/2010, 13:53
Avatar de fast_10  
Fecha de Ingreso: abril-2010
Ubicación: Desde aquí o desde allá
Mensajes: 16
Antigüedad: 14 años
Puntos: 0
Respuesta: como preguntar si funcion retorno false

Cita:
Iniciado por sqa212 Ver Mensaje
Mira a ver si te vale:


function envio_form(envio_dato){
f=nombre_formulario;
if(!compruebo_existencia_registro(envio_dato)){
//<-funcion q valida existencia
alert('registro ya existe');
return false;
//para que no envie el formulario
} else {
f.Dato.value=envio_dato;
f.submit();
}

}
buenas, realmente el envio del formulario no es el problema, sino que es reconocer que la funcion compruebo_existencia_registro(envio_dato) retorna false y no dejar enviar el formulario.
  #4 (permalink)  
Antiguo 25/07/2010, 14:04
Avatar de _cronos2
Colaborador
 
Fecha de Ingreso: junio-2010
Mensajes: 2.062
Antigüedad: 13 años, 10 meses
Puntos: 310
Respuesta: como preguntar si funcion retorno false

Código Javascript:
Ver original
  1. if(compruebo_existencia('envio_dato')){
  2.  alert('devolvió true');
  3. }else{
  4.  alert('devolvió false');
  5. }

Saludos (:
__________________
" Getting older’s not been on my plans
but it’s never late, it’s never late enough for me to stay. "
Cigarettes - Russian Red
  #5 (permalink)  
Antiguo 25/07/2010, 14:58
Avatar de fast_10  
Fecha de Ingreso: abril-2010
Ubicación: Desde aquí o desde allá
Mensajes: 16
Antigüedad: 14 años
Puntos: 0
Busqueda Respuesta: como preguntar si funcion retorno false

Cita:
Iniciado por _cronos2 Ver Mensaje
Código Javascript:
Ver original
  1. if(compruebo_existencia('envio_dato')){
  2.  alert('devolvió true');
  3. }else{
  4.  alert('devolvió false');
  5. }

Saludos (:
Buenas, realice lo señalado pero la funcion simpre me devuelve false, pero para sorpresa mia coloque en alert lo que inprimo con el response text

Código Javascript:
Ver original
  1. function compruebo_existencia_registro(envio_dato){
  2.      //el blabla correspondiente
  3.      if(ajax.responseText=='existe'){
  4.               alert(ajax.responseText);//esto muestra 'existe'
  5.               return false;
  6.       }else{
  7.              alert(ajax.responseText);//esto muestra 'no existe'
  8.              return true;
  9.       }
  10. }
los alert que coloque realizan lo que corresponde, pero cuando ajax.responseText<>'existe' debe retornar true, pero la condicion If(compruebo_existencia('envio_dato')) simpre identifica q retornaron un false.

Última edición por fast_10; 25/07/2010 a las 15:09
  #6 (permalink)  
Antiguo 25/07/2010, 15:29
Avatar de _cronos2
Colaborador
 
Fecha de Ingreso: junio-2010
Mensajes: 2.062
Antigüedad: 13 años, 10 meses
Puntos: 310
Respuesta: como preguntar si funcion retorno false

Supogo que es porque en mi if pone 'envio_dato', no envio_dato. A lo mejor es eso, prueba a cambiar eso y si no te funciona no sé qué puede ser

Saludos (:
__________________
" Getting older’s not been on my plans
but it’s never late, it’s never late enough for me to stay. "
Cigarettes - Russian Red
  #7 (permalink)  
Antiguo 25/07/2010, 15:43
Avatar de fast_10  
Fecha de Ingreso: abril-2010
Ubicación: Desde aquí o desde allá
Mensajes: 16
Antigüedad: 14 años
Puntos: 0
Respuesta: como preguntar si funcion retorno false

Cita:
Iniciado por _cronos2 Ver Mensaje
Supogo que es porque en mi if pone 'envio_dato', no envio_dato. A lo mejor es eso, prueba a cambiar eso y si no te funciona no sé qué puede ser

Saludos (:
lo deje como envio_dato sin comilla
  #8 (permalink)  
Antiguo 25/07/2010, 16:00
Avatar de _cronos2
Colaborador
 
Fecha de Ingreso: junio-2010
Mensajes: 2.062
Antigüedad: 13 años, 10 meses
Puntos: 310
Respuesta: como preguntar si funcion retorno false

Pero si lo pones sin comillas no te funcionará porque no sabe qué es envio_dato y luego no se va a definir. A no ser que hagas algo como esto:
Código Javascript:
Ver original
  1. function f1(envio_dato){
  2. [...]
  3.  if(compruebo_existencia(envio_dato)){
  4. [...]
  5.  }
  6. [...]
  7. }

Pero luego al llamar a f1() deberías definir ese argumento

Saludos (:
__________________
" Getting older’s not been on my plans
but it’s never late, it’s never late enough for me to stay. "
Cigarettes - Russian Red
  #9 (permalink)  
Antiguo 25/07/2010, 16:10
Avatar de fast_10  
Fecha de Ingreso: abril-2010
Ubicación: Desde aquí o desde allá
Mensajes: 16
Antigüedad: 14 años
Puntos: 0
Respuesta: como preguntar si funcion retorno false

Cita:
Iniciado por _cronos2 Ver Mensaje
Pero si lo pones sin comillas no te funcionará porque no sabe qué es envio_dato y luego no se va a definir. A no ser que hagas algo como esto:
Código Javascript:
Ver original
  1. function f1(envio_dato){
  2. [...]
  3.  if(compruebo_existencia(envio_dato)){
  4. [...]
  5.  }
  6. [...]
  7. }

Pero luego al llamar a f1() deberías definir ese argumento

Saludos (:
asi le doi valor a varible envio_dato:
Código HTML:
Ver original
  1. <a href="javascript:compruebo_existencia_registro('<?php echo $row['numero']; ?>');void(0)">Numero</a>
saludos.
  #10 (permalink)  
Antiguo 26/07/2010, 07:01
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: como preguntar si funcion retorno false

Hola

A ver si te ayuda esto
Código Javascript:
Ver original
  1. <html>
  2. <head>
  3. <script type="text/javascript">
  4. function envio_form(val){
  5. var bol = function() {return compruebo_existencia_registro()}();
  6. if (bol === true) {
  7. alert("enviar")
  8. } else {
  9. alert("no enviar")
  10. return false;
  11. }
  12. }
  13.  
  14.  
  15. function compruebo_existencia_registro(){
  16.    
  17.     //el blabla correspondiente
  18.     if(document.getElementById('Usuario').value=='Adler'){
  19.         return false;
  20.     }else{
  21.         return true;
  22.     }
  23. }
  24. </script>
  25. </head>
  26. <body>
  27. <form action="" method="get" onsubmit="return envio_form(this);">
  28. <input type="text" name="Usuario" id="Usuario" value="Adler" />
  29. <input type="submit" value="Validar" />
  30. </form>
  31. </body>
  32. </html>
Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />

Etiquetas: funcion
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 16:15.