Comunidad de diseño web y desarrollo en internet online

Formulario con multipleas validaciones

Citar            
MensajeEscrito el 04 Ago 2009 02:03 pm
Hola estimados claber, hoy estoy ante ustedes con el siguiente problema, mi conocimiento en javascrit es poco y necesito solucionar un problema de validación en el siguiente formulario:

Código :

<script>

function validarEntero(valor){ 
      //intento convertir a entero. 
     //si era un entero no le afecta, si no lo era lo intenta convertir 
     valor = parseInt(valor) 

      //Compruebo si es un valor numérico 
      if (isNaN(valor)) { 
            //entonces (no es numero) devuelvo el valor cadena vacia 
            return "" 
      }else{ 
            //En caso contrario (Si era un número) devuelvo el valor 
            return valor 
      } 
} 

function valida_envia(){
      //valido cortesia
   if (document.form_mail.cortesia.selectedIndex==0){
      alert("Debe seleccionar una opción en el item Cortesia.")
      document.form_mail.cortesia.focus()
      return 0;
   }
   
   //valido el apellido
   if (document.form_mail.apellido.value.length==0){
      alert("Por favor, ingrese su Apellido.")
      document.form_mail.apellido.focus()
      return 0;
   }
   
   //valido el nombre
   if (document.form_mail.nombre.value.length==0){
      alert("Tiene que escribir su nombre")
      document.form_mail.nombre.focus()
      return 0;
   }

   //valido el teléfono SÉ QUE ESTA MAL, NECESITO QUE ME VALIDE SI TIENE MAS 8 DIGITOS, SINO QUE DE ERROR Y ADEMÁS NECESITO CREAR OTRO CAMPO DE MÓVIL Y EN CASO DE QUE LLENE UNO DE LOS DOS QUE SEA VALIDO
   telefono = document.form_mail.telefono.value
   telefono = validarEntero(telefono)
   document.form_mail.telefono.value=telefono
   if (telefono==""){
      alert("Por favor, ingrese su número telefónico.")
      document.form_mail.telefono.focus()
      return 0;
   }else{
      if (telefono<18){
         alert("Por favor, verifique su número telefónico.")
         document.form_mail.telefono.focus()
         return 0;
      }
   }
   

   //valido el e-mail NECESITO QUE ME VALIDE LOS STANDARES DE @ Y "."
   if (document.form_mail.email.value.length==0){
      alert("Por favor, ingrese su E-Mail.")
      document.form_mail.email.focus()
      return 0;
   }

   //valido ciudad
   if (document.form_mail.ciudad.value.length==0){
      alert("Por favor, ingrese su ciudad.")
      document.form_mail.ciudad.focus()
      return 0;
   }
   
      //valido C.P.
   if (document.form_mail.cp.value.length==0){
      alert("Por favor, ingrese su Código Postal")
      document.form_mail.cp.focus()
      return 0;
   }
   
    
   if (document.form_mail.medio.selectedIndex==0){
      alert("Debe seleccionar una opción en el item ¿Cómo nos conocio?.")
      document.form_mail.medio.focus()
      return 0;
   }


   if (document.form_mail.proyecto.selectedIndex==0){
      alert("Debe seleccionar una opción en el item Proyecto del que desa recibir información.")
      document.form_mail.proyecto.focus()
      return 0;
   }

      //mensaje
   if (document.form_mail.mensaje.value.length==0){
      alert("Por favor, debe completar el campo mensaje.")
      document.form_mail.mensaje.focus()
      return 0;
   }


   //el formulario se envia
   alert("Muchas gracias por enviar el formulario");
   document.form_mail.submit();
}

</script>

Por marcelonologo

Claber

311 de clabLevel


2 articulos

 

Patagonia Argentina

firefox
Citar            
MensajeEscrito el 04 Ago 2009 09:42 pm
Tengo la respuesta provista por N.G. y aquí la comparto:

Código :

<script>

function validarEntero(valor){ 
      //intento convertir a entero. 
     //si era un entero no le afecta, si no lo era lo intenta convertir 
     valor = parseInt(valor) 

      //Compruebo si es un valor numérico 
      if (isNaN(valor)) { 
            //entonces (no es numero) devuelvo el valor cadena vacia 
            return "" 
      }else{ 
            //En caso contrario (Si era un número) devuelvo el valor 
            return valor 
      } 
} 

//Permitir sólo números en el campos telefónicos y C.P. p
var key2 = window.Event ? true : false;
function LP_data(evt,guion){ 
var key = key2 ? evt.which : evt.keyCode; 
if(guion==0) {return (key <= 13 || (key >= 48 && key <= 57 || key==46));}
else {return (key <= 13 || (key >= 48 && key <= 57 || key==46 || key==45));}
}


function valida_envia(){
      //valido cortesia
   if (document.form_mail.cortesia.selectedIndex==0){
      alert("Debe seleccionar una opción en el item Cortesia.")
      document.form_mail.cortesia.focus()
      return 0;
   }
   
   //valido el apellido
   if (document.form_mail.apellido.value.length==0){
      alert("Por favor, ingrese su Apellido.")
      document.form_mail.apellido.focus()
      return 0;
   }
   
   //valido el nombre
   if (document.form_mail.nombre.value.length==0){
      alert("Tiene que escribir su nombre")
      document.form_mail.nombre.focus()
      return 0;
   }


   //valido el teléfono
   telefono = document.form_mail.telefono.value
   if (telefono.length==0){
      alert("Por favor, ingrese su número telefónico.")
      document.form_mail.telefono.focus()
      return 0;
   }else{
      if (telefono.length<=8){
         alert("Por favor, verifique su número telefónico.")
         document.form_mail.telefono.focus()
         return 0;
      }
   }
   
   

   //valido el e-mail
 if (document.form_mail.email.value.length==0){
      alert("Por favor, ingrese su E-Mail.")
      document.form_mail.email.focus()
      return 0;
   }
else {
   if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(document.form_mail.email.value)){
   } else {
      alert("Por favor, ingrese un E-Mail válido.")
      document.form_mail.email.focus()
      return 0;
   }}
   
   //valido ciudad
   if (document.form_mail.ciudad.value.length==0){
      alert("Por favor, ingrese su ciudad.")
      document.form_mail.ciudad.focus()
      return 0;
   }
   
   //valido el C.P.
   cp = document.form_mail.cp.value
   if (cp.length==0){
      alert("Por favor, ingrese su código postal.")
      document.form_mail.cp.focus()
      return 0;
   }else{
      if (cp.length<=4){
         alert("Por favor, ingrese su código postal.")
         document.form_mail.cp.focus()
         return 0;
      }
   }
   
    
   if (document.form_mail.medio.selectedIndex==0){
      alert("Debe seleccionar una opción en el item ¿Cómo nos conocio?.")
      document.form_mail.medio.focus()
      return 0;
   }


   if (document.form_mail.proyecto.selectedIndex==0){
      alert("Debe seleccionar una opción en el item Proyecto del que desa recibir información.")
      document.form_mail.proyecto.focus()
      return 0;
   }

      //mensaje
   if (document.form_mail.mensaje.value.length==0){
      alert("Por favor, debe completar el campo mensaje.")
      document.form_mail.mensaje.focus()
      return 0;
   }


   //el formulario se envia
   alert("Muchas gracias por enviar el formulario");
   document.form_mail.submit();
}

</script>

Por marcelonologo

Claber

311 de clabLevel


2 articulos

 

Patagonia Argentina

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.