Espero que les sirva ha mi me ha servido de mucho ya que no necesito por cada pagina hacer N if() --- solamente ingresar la funcion y el documento javascript
Recomendaciones para usar la funcion
1) los elementos para que se compruebe si son validados solos eran los <input> y los que tengan por 'type'= text
2) si algun input con type= text de tu form no necesita ser validado solo es agregarle a el name un (-) de ultimo
la funcions e parte en dos funciones
la primera que es particular que va en cada pagina que tengamos
FUNCION PARTICULAR
Código Javascript:
Ver original
function validar(){ inputs = document.getElementsByTagName("input"); array = camposVacios(inputs); if(array[0]==false){ alert("Faltan campos "+array[2]) document.getElementById(array[1]).focus(); } else{ alert("todos los campos estan corrrectos")// se puede lo que necesitemos que haga si todos los campos estan llenos } }
en el else se pondria todo lo que necesitamos que haga nuestro form si todos los campos están correctamente llenos
La función general que iría en un documento aparte de javascript un jsp y se incluiría en tu pagina particular por medio de
<script language="javascript" type="text/javascript" src="funciongeneral.jsp"></script>
así para cualquier página solamente incluir la funcion general y crear la funcion particular
FUNCION GENERAL
Código Javascript:
Ver original
//Funcion para validar si ahi campos vacios en un texto //el campo del formulario que no necesite ser validado se le agrega al final del name un (-) // devuelve 3 datos ( booleano,id,name) function camposVacios(inputs) { var a = true; var array=new Array(3); for (var i = 0, total = inputs.length; i < total; i ++) if(inputs[i].type == 'text' || inputs[i].type == 'password' ){ if(inputs[i].value == "" ){ str = inputs[i].name; var id=inputs[i].id var nombre = str.substring(3,str.length) if(str.substring(str.length-1,str.length)!="-"){ a=false; i=total; } } } array[0] = a;// booleano array[1] = id; // id el input que esta en blanco array[2] = nombre; //name sin las tres primeras letras (txt) return(array); }
y el form puede ser algo como esto
Código HTML:
Ver original
el input de name numero2- no sera verificado todos los names que tenga - al final no seran verificados
bueno este es mi tema espero que les sirva lo he creado yo con la ayuda obvio de este foro de varios temas no se si esta bien publicado o si aca era que si publicaba igual espero que le sirva ala gente si necesitan algun ayuda aqui estare :D mande mensaje
no soy muy teso pero con gusto ayudare
Esteban Hurtado Alvarez - Colombia