// funciones.aspx function trim(texto) { var textoRes = ""; if (texto != "") { var arrTexto = texto.split(" "); for (var iCont = 0; iCont < arrTexto.length; iCont++) { textoRes += arrTexto[iCont]; } } return textoRes; } function lTrim(texto) { var textoRes = texto; if (texto != "") { while (textoRes.substr(0,1) == " ") { textoRes = textoRes.substr(1, textoRes.length - 1); } } return textoRes; } function rTrim(texto) { var textoRes = texto; if (texto != "") { while (textoRes.substr(textoRes.length - 1,1) == " ") { textoRes = textoRes.substr(0, textoRes.length - 1); } } return textoRes; } // compruebaCampos function compruebaCampos(formulario) { var elCampoCasque = null; var resultado = true; var iCont = 0; var elementoFormulario; var textoIns = new String; //Se obtiene el separador decimal var valPunto = ((3/2).toString()).substr(1,1); var val_nombres = (formulario.val_nombres.value).split(";"); var val_descrip = (formulario.val_descrip.value).split(";"); var val_tipo = (formulario.val_tipo.value).split(";"); var val_obligat = (formulario.val_obligat.value).split(";"); var val_minval = (formulario.val_minval.value).split(";"); var val_maxval = (formulario.val_maxval.value).split(";"); while ((resultado) && (iCont < val_nombres.length)) { elementoFormulario = eval("formulario." + val_nombres[iCont]); if (elementoFormulario.type == "text") { //-- Si se ha intruducido algún espacio a la izq o der del texto se suprime elementoFormulario.value = lTrim(rTrim(elementoFormulario.value)); //-- Si el campo es de tipo float, se corrige el caracter decimal if (val_tipo[iCont] == "float") { if (valPunto == ".") elementoFormulario.value = elementoFormulario.value.replace(",","."); else elementoFormulario.value = elementoFormulario.value.replace(".",","); } textoIns = elementoFormulario.value; //-- Si el campo es obligatorio y está vacío --// if ((textoIns == "") && (val_obligat[iCont]=="true")) { alert("El campo %s0 no puede estar vacío...".replace("%s0", val_descrip[iCont])); resultado = false; } //-- Si el campo es entero o float --// if ((textoIns != "") && ((val_tipo[iCont] == "float") || (val_tipo[iCont] == "int")) && (isNaN(textoIns)) && (resultado)) { alert("El número introducido en el campo %s0 no es un número válido...".replace("%s0", val_descrip[iCont])); resultado = false; } //-- Si el campo es float y es menor que el valor mínimo --// if ((textoIns != "") && (val_tipo[iCont] == "float") && (resultado)) { if (parseFloat(textoIns.toString()) < parseFloat(val_minval[iCont])) { alert(("El valor introducido en el campo %s0 debe ser mayor que %s1...".replace("%s0", val_descrip[iCont])).replace("%s1", val_minval[iCont])); resultado = false; } } //-- Si el campo es int y es menor que el valor mínimo --// if ((textoIns != "") && (val_tipo[iCont] == "int") && (resultado)) { if (parseInt(textoIns.toString()) < parseInt(val_minval[iCont])) { alert(("El valor introducido en el campo %s0 debe ser mayor que %s1...".replace("%s0", val_descrip[iCont])).replace("%s1", val_minval[iCont])); alert("El valor introducido en el campo " +val_descrip[iCont] + " debe ser mayor que " + val_minval[iCont] + "..."); resultado = false; } } //-- Si el campo es float y es mayor que el valor máximo --// if ((textoIns != "") && (val_tipo[iCont] == "float") && (resultado)) { if (parseFloat(textoIns.toString()) > parseFloat(val_maxval[iCont])) { alert(("El valor introducido en el campo %s0 debe ser menor que %s1...".replace("%s0", val_descrip[iCont])).replace("%s1", val_maxval[iCont])); resultado = false; } } //-- Si el campo es int y es mayor que el valor máximo --// if ((textoIns != "") && (val_tipo[iCont] == "int") && (resultado)) { if (parseInt(textoIns.toString()) > parseInt(val_maxval[iCont])) { alert(("El valor introducido en el campo %s0 debe ser menor que %s1...".replace("%s0", val_descrip[iCont])).replace("%s1", val_maxval[iCont])); resultado = false; } } //-- Si el campo es tipo e-mail --// if ((textoIns != "") && (val_tipo[iCont] == "email") && (resultado)) { if (((textoIns.indexOf("@") == -1) && (textoIns.indexOf(".") == -1)) || ((textoIns.indexOf("@") > textoIns.indexOf(".")))) { alert("El valor introducido en el campo %s0 no parece una cuenta de correo válida...".replace("%s0", val_descrip[iCont])); resultado = false; } } } iCont++; } if (!resultado) eval("formulario." + val_nombres[iCont-1] + ".focus()"); return resultado; }