Ver Mensaje Individual
  #2 (permalink)  
Antiguo 05/01/2016, 21:59
Avatar de carlillos
carlillos
 
Fecha de Ingreso: febrero-2007
Ubicación: México
Mensajes: 245
Antigüedad: 17 años, 2 meses
Puntos: 21
Respuesta: Validar campos selectivamente (campos requeridos y no requeridos)

En tu segundo código estás haciendo un loop para todos los elementos sin distinción, si quieres que haya algunos opcionales tienes que crear una excepciónes.

Código Javascript:
Ver original
  1. var form = document.getElementById("formulario");
  2. form.addEventListener("submit", function(event){
  3.   event.preventDefault();
  4.   var campo = true,
  5.       elementos = this.elements,
  6.       total = elementos.length,
  7.       opcional; //Variable de campo opcional
  8.  
  9.   for (var i = 0; i < total; i++){
  10.     //Valor inicial de variable
  11.     opcional = false;
  12.     //Revisando si es campo opcional
  13.     if (elementos[i].name === "imagen1" ||
  14.           elementos[i].name === "imagen2" ||
  15.           elementos[i].name === "imagen3" ||
  16.           elementos[i].name === "imagen4" ||
  17.           elementos[i].name === "imagen5" ||
  18.           elementos[i].name === "imagen6") {
  19.           //Activando variable opcional
  20.           opcional = true;
  21.     }
  22.     if (!elementos[i].value.length && !opcional){
  23.       alert ("Debes de ingresar el " + elementos[i].name);
  24.       elementos[i].focus();
  25.       campo = false;
  26.       break;
  27.     }
  28.   }
  29.  
  30.   if (campo){
  31.     this.submit();
  32.   }
  33. }, false);

Saludos.