//------------------------------------------------------------------------------------------------ //------------------------------------------------------------------------------------------------ //------------------------------------------------------------------------------------------------ // FUNCTION myIsEmpty // Scopo: Controlla che una stringa non sia vuota né costituita da soli caratteri whitespace // Parametri di ingresso : // sName : oggetto text box // Return : true se la stringa è vuota o contiene solo whitespaces; false se la stringa non è vuota o non contiene solo whitespaces //------------------------------------------------------------------------------------------------ function myIsEmpty (sName) { //Controllo che il campo non sia vuoto né sia TUTTO costituito dai caratteri "bianchi" // Definizione variabili // Contatore var cont = 0; // Elenco dei caratteri blank: \t=tab; \n=fine linea; \r=ritorno a capo var whitespace = " \t\n\r"; // Controllo che il campo non sia vuoto if (sName.value == "") { //sMsg = sMsg + "\n" + sLabel; //aggiungo sLabel all'elenco dei campi da completare //return sMsg return true } //Controllo che il campo non sia TUTTO costituito dai caratteri "bianchi" for (i = 0; i < sName.value.length; i++) //per ciascun carattere di sName { ch = sName.value.charAt(i); for (j = 0; j < whitespace.length; j++) //per ciascun carattere di whitespace if (ch == whitespace.charAt(j)) { cont = cont + 1; } else break; } if (cont == sName.value.length) //se il contatore cont è pari alla lunghezza di sName => sName è TUTTA composta dai caratteri whitespace { //sMsg = sMsg + "\n" + sLabel; //aggiungo sLabel all'elenco dei campi da completare //return sMsg return true } return false } //------------------------------------------------------------------------------------------------ function myInStr4EMail(sText, sOK) { var k=0; var strOK = sOK; for (i = 0; i < sText.length; i++) { ch = sText.charAt(i); for (j = 0; j < strOK.length; j++) { if (ch == strOK.charAt(j)) { break; } if (j == strOK.length - 1) { return false } } } return true } //------------------------------------------------------------------------------------------------ //------------------------------------------------------------------------------------------------ //------------------------------------------------------------------------------------------------ // FUNCTION myIsEmail(sEmail) // Scopo: Controlla che un valore sia un indirizzo email valido // (struttura del tipo a@b.c;) // (primo carattere solo alfabetico; altri caratteri solo alfanumerici oppure "_" o "." o "'") // Parametri di ingresso : // sEmail : valore dell'oggetto text box // Return : true se il valore è un indirizzo email valido; false se non è un indirizzo email valido // Esempio di chiamata: // //------------------------------------------------------------------------------------------------ function myIsEmail(sEmail) { //elimina i caratteri blank dall'indirizzo email //alert('*' + sEmail.value + '*') z = sEmail.value x = z.replace(" ","") sEmail.value = x //alert('*' + sEmail.value + '*') var i = 1; var sLength = sEmail.value.length; var str; var chPos; //Il primo carattere di un indirizzo mail deve essere alfanumerico a = myInStr4EMail(sEmail.value.charAt(0), "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_") if (a == false) { return false; } // Deve esserci almeno 1 carattere davanti al simbolo @ // look for @ while ((i < sLength) && (sEmail.value.charAt(i) != "@")) { i++ } //recupero prima parte di indirizzo email che può contenere solo lettere e/o numeri e/o "_" str = sEmail.value.substring(0, i); a = myInStr4EMail(str, "-_.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789") if (a == false) { return false; } //Deve esserci il simbolo "@" if ((i >= sLength) || (sEmail.value.charAt(i) != "@")) { return false; } else { i += 2; } chPos = i - 1 // Deve esserci il carattere "." while ((i < sLength) && (sEmail.value.charAt(i) != ".")) { i++ } //recupero seconda parte di indirizzo email che può contenere solo lettere e/o numeri e/o "_" str = sEmail.value.substring(chPos, i); a = myInStr4EMail(str, "_.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789") if (a == false) { return false; } chPos = i + 1 // Deve esserci almeno 1 carattere dopo il carattere "." if ((i >= sLength - 1) || (sEmail.value.charAt(i) != ".")) { return false; } //recupero terza parte di indirizzo email che può contenere solo lettere e/o numeri e/o "_" str = sEmail.value.substring(chPos,sEmail.value.length); a = myInStr4EMail(str, "_.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789") if (a == false) { return false; } //se tutto è OK return true }