// Javascript para el formulario de contacto. function ValidarForm() { error = false if(document.getElementById("campo1").value == "") { InvalidarCampo("1"); error = true; } validarMail("2"); if(document.getElementById("campo4").value == "") { InvalidarCampo("4"); error = true; } if(document.getElementById("campo5").value == "") { InvalidarCampo("5"); error = true; } if(error == true) { alert('Por favor, rellena el formulario correctamente'); return (false); } else { return (true); } } function validarMail(campoMail) { error = false; email = document.getElementById("campo" + campoMail).value; if (email==null) { error = true; mensajeEmail("error", campoMail); InvalidarCampo(campoMail); } if (! caracteresValidos(email)) { // verifica que todos los caracteres sean validos error = true; mensajeEmail("error", campoMail); InvalidarCampo(campoMail); } if (email.indexOf("@") < 1) { // debe conteneder @, y no debe ser el primer caracter error = true; mensajeEmail("error", campoMail); InvalidarCampo(campoMail); } else if (email.lastIndexOf(".") <= email.indexOf("@")) { // el ultimo punto debe estar despues de @ error = true; mensajeEmail("error", campoMail); InvalidarCampo(campoMail); } else if (email.indexOf("@") == email.length) { // @ no debe ser el ultimo caracter error = true; mensajeEmail("error", campoMail); InvalidarCampo("2"); } else if (email.indexOf("..") >=0) { // dos puntos de seguido no son correctos error = true; mensajeEmail("error", campoMail); InvalidarCampo(campoMail); } else if (email.indexOf(".") == email.length) { // punto no puede ser el caracter final error = true; mensajeEmail("error", campoMail); InvalidarCampo(campoMail); } else { mensajeEmail("ok", campoMail); } if (email == "") { error = true; mensajeEmail("error2", campoMail); InvalidarCampo("campoMail"); } return error; } function mensajeEmail(tipo, campoMail) { msg = document.getElementById("vacioCampo" + campoMail); if(tipo == "error") { msg.style.color = "#ff0000"; msg.innerHTML = "Dirección de E-mail no válida"; } else if(tipo == "ok") { msg.style.display = "none"; document.getElementById("campo" + campoMail).className = "txt"; } else if(tipo == "error2") { msg.style.color = "#000000"; msg.innerHTML = "Obligatorio"; } } function caracteresValidos(email) { var valido = true; var permitidos = "abcdefghijklmnopqrstuvwxyz0123456789@.-_"; for (var i=0; i < email.length; i++) { var letra = email.charAt(i).toLowerCase(); if (permitidos.indexOf(letra) != -1) continue; valido = false; break; } return valido; } function InvalidarCampo(id) { if (id == 'campoMail') { id = 2; } document.getElementById("campo" + id).className = "txt-error"; } function VerificarCampo(id) { if(document.getElementById("campo" + id).value != "") { document.getElementById("vacioCampo" + id).style.display = "none"; document.getElementById("campo" + id).className = "txt"; } else { document.getElementById("vacioCampo" + id).style.display = "inline"; } }