JavaScript
Participe, siéntase libre de escribir un mensaje en este foro de discusión o de responder a un mensaje del mismo. Aportando su opinión enriquece este sitio de manera que todos podemos aprender unos de otros. Los foros son el complemento ideal al curso para aprender compartiendo.
validacion formulario
Volver al foro |
Escribir mensaje |
Añadir nuevo tema
De: AdrianFecha: 06/02/2010
Mensaje:Hola amigos una consulta.
Tengo un formulario con 3 campos por decir un numero,esta bien proceder asi para validarlo?
1 pongo un contador en 0
2 valido el primer campo si hay error contador++
y asi sucesivamente hasta el ultimo campo
3 pregunto si contador!=0; return false;
Otra cosa, este codigo es una funcion aplicada al onsubmit del formulario.
Sucede lo siguiente si pongo onsubmit=lafuncion() envia los datos por get aunque haya errores, en cambio si pongo onsubmit=return lafuncion() parece funcionar ya que no envia los datos, es esta la manera de hacerlo o hay otras mas efectivas o simples?
Gracias y un saludo a todos.
Quizás le interese
De: jbosch(vosk)Fecha: 06/02/2010
Mensaje:la finalidad es determinar el numero de errores o hacer una validacion previa al envio? no es necesario comprovar los campos siguientes al que detectas el error (a fin de cuentas los habras validado todos como minimo una vez antes del envio, no es necesario validar algo que ya sabes que no se va a enviar):
if(campo erroneo)
{
//informas al usuario
return 0;
}
si de todas formas quieres validar todos los campos aun cuando hayas detectado un error, no es necesario usar el contador (a menos que quieras contar los fallos), puedes usar un flag de estado como valor de retorno:
function valida(f)
{
var sinerrores=1;
if(f['usr'].value.length<=0) {sinerrores=0;}
if(f['eml'].value.length<=0) {sinerrores=0;}
return sinerrores;
}
otra cosa, recuerda que la validacion en el lado cliente no es segura, tendras que revalidar los datos cuando los tengas en el servidor.
por lo del evento, lo normal es asignar un retorno de la funcion al submit:
<form onSubmit="return valida(this);">
puedes probar otra cosa que consiste en usar un type button que en el evento click lanze una funcion que si finaliza sin errores fuerce el envio del form:
<input type="button" onClick="envia(this.form);">
function envia(f)
{
if(todo_correcto) {f.submit();}
}
personalmente prefiero la primera forma.
jbosch(vosk)
De: AdrianFecha: 07/02/2010
Mensaje:Gracias amigo, me sirvio mucho tu respuesta.
La finalidad no es determinar la cantidad de errores sino simplemente no enviar los datos si existe un error en algun campo.
Con respecto a la inseguridad de la validacion del lado del cliente,no lo sabia,habia oido por ahi que no valia la pena ir hasta el servidor y regresar en el caso de que haya errores si para eso esta javascript.
Entonces tendre que trabajar el doble :) y validar con php tambien.
Gracias jbosch(vosk) muy amable, un saludo y hasta la proxima.
Adrian.
Volver al foro |
Escribir mensaje |
Añadir nuevo temaQuizás le interese:
WebEstilo.com no se hace responsable de las opiniones que los usuarios puedan verter en cualquiera de los foros existentes.