Foros del Web » Programando para Internet » Javascript »

Completar la validación de formulario con AJAX

Estas en el tema de Completar la validación de formulario con AJAX en el foro de Javascript en Foros del Web. Hola a todos/as: tengo un formulario que trato (y digo trato porque no lo acabo de perfeccionar) de validar con ajax. El código del form ...
  #1 (permalink)  
Antiguo 11/08/2008, 09:23
Avatar de estibaliz2006  
Fecha de Ingreso: noviembre-2006
Mensajes: 439
Antigüedad: 17 años, 5 meses
Puntos: 1
Completar la validación de formulario con AJAX

Hola a todos/as: tengo un formulario que trato (y digo trato porque no lo acabo de perfeccionar) de validar con ajax. El código del form es este:

Código PHP:
    <form name="form" id="form" onsubmit="return validar_clien(this)" onReset="return Limpiar();" action="procesar.php" ENCTYPE="multipart/form-data" METHOD="POST">
<
fieldset>
<
legend class="text4">Me interesa este producto</legend>
&
nbsp;&nbsp;<label for="nombre" class="text1">Persona de Contacto<br/ >
&
nbsp;&nbsp;<input class="text1" type="text" size=35 name="nombre" id="input12"> <span id="error12" style="visibility:hidden" align="center" class="text0">Campo obligatorio</span></label><br />
&
nbsp;&nbsp;<label for="telefono" class="text1">Teléfono<br/ >
&
nbsp;&nbsp;<input class="text1" type="text" size=35 name="telefono" id="input13"> <span id="error13" style="visibility:hidden" align="center" class="text0">Campo obligatorio</span></label><br />
&
nbsp;&nbsp;<label for="email" class="text1">Email<br/ >
</
fieldset>
<
div style="text-align: center">    <br> <input type="submit" name="Submit" value="Enviar"  class="caja"
                 <
input type="reset" name="Reset" value="Limpiar"  class="caja">
</
form>

</
div
todo esto lo valido a través de la función siguiente:

Código PHP:
function validar_clien(frm) {

  var 
resultado12 frm.nombre.value.length 3;
  var 
resultado13 frm.telefono.value.length 3;
  var 
resultado14 frm.email.value.length 3;
  
  
document.getElementById('error12').style.visibility = (resultado12) ? 'hidden':'visible';
  
document.getElementById('input12').style.borderColor = (resultado12) ? 'black':'red';
  
document.getElementById('input12').style.color = (resultado12) ? 'black':'red'
  
document.getElementById('error13').style.visibility = (resultado13) ? 'hidden':'visible';
  
document.getElementById('input13').style.borderColor = (resultado13) ? 'black':'red';
  
document.getElementById('input13').style.color = (resultado13) ? 'black':'red'
  
document.getElementById('error14').style.visibility = (resultado14) ? 'hidden':'visible';
  
document.getElementById('input14').style.borderColor = (resultado14) ? 'black':'red';
  
document.getElementById('input14').style.color = (resultado14) ? 'black':'red'
      
  return  (
resultado12 && resultado13 && resultado14);

bien. esto lo único que me valida es que los campos no sean inferiores a tres dígitos. pero, ¿como valido para que además en el campo nombre no puedan meterse espacios en blanco solamente o números? ¿y para que en el campo teléfono sólo sea posible introducir números y tampoco admita los espacios en blanco sólamente? ¿y para validar que el email es un email correcto?

no doy con la formula. por favor, podéis echarme una mano? gracias
  #2 (permalink)  
Antiguo 11/08/2008, 10:13
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Completar la validación de formulario con AJAX

Hola:

Como podrás apreciar el tema lo he movido al foro javascript porque en tu pregunta no hace falta implementaciones AJAX (no necesitas nada del server)... otra cosa sería saber si hay registros duplicados en una base de datos, o similares...

Sobre lo que pides, date una vuelta en las FAQs javascript, que me parece que tienen las respuestas a todas tus preguntas...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
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 23:00.