Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA
In tre giorni a Las Vegas Oracle ha presentato agenti che eseguono il lavoro, l'alleanza con OpenAI e un cloud aperto agli acceleratori di tutti. Ma i clienti europei chiedono garanzie prima ancora delle funzionalità
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort
Fino a 740 km WLTP con la batteria da 97,2 kWh, sospensioni che leggono la strada con una telecamera e un abitacolo da salotto parigino. La nuova DS N°7 raccoglie l'eredità della DS 7 e la porta, per la prima volta, nel mondo 100% elettrico. Ecco come è fatta, cosa offre e quanto costa.
Recensione Samsung Galaxy Tab S12 Ultra: non chiamatelo tablet... è molto di più
Recensione Samsung Galaxy Tab S12 Ultra: non chiamatelo tablet... è molto di più
Abbiamo provato Samsung Galaxy Tab S12 Ultra nella versione 12 GB + 256 GB con tastiera, e il risultato è un tablet che in questa configurazione si comporta come un notebook con la fluidità tipica di Android. Spessore di 5,1 mm, display Dynamic AMOLED 2X da 14,6 pollici, MediaTek Dimensity 9500 e un software senza incertezze compongono un prodotto di vertice, con prezzi da 1.539 euro, frenato solo da un'autonomia nella parte bassa del confronto
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 04-07-2005, 19:11   #1
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
[FORM] Controlli JS sui campi.

Senza che mi metto a scrivere una ad una le funzioni JS, non è che potete passarmi qualche link?! Grazie.
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 04-07-2005, 19:16   #2
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
Quote:
Originariamente inviato da Matrixbob
Senza che mi metto a scrivere una ad una le funzioni JS, non è che potete passarmi qualche link?! Grazie.
Tipo:
Codice PHP:
function CheckMail(form){
    var 
x = form.email.value;
    var 
filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
    if (!
filter.test(x)){
        
alert('Inserire un indirizzo email valido!');
        
form.email.focus();
        return 
false;
    }
} 
Pero che siano:
ChekText(this)
CheckDate(this)
o cose simili.

Per metterle tutte in una funziona come faccio?!
Le metto in AND tra loro in un'altra funzione?!
Altrimenti che mi tocca fare un onSubmit lungo un km?!
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.

Ultima modifica di Matrixbob : 04-07-2005 alle 19:23.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 04-07-2005, 23:38   #3
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
Ehm ragazzi ... fin'ora ho fatto come vi posterò, ma mi raccomando fermatemi se sto facendo delle cagate plz

Il file.JS ...
Codice:
function Insautore() {
     // Variabili associate ai campi del modulo
     var nome = document.insautore.nome.value;
     var cognome = document.insautore.cognome.value;
     var cf = document.insautore.cf.value;
     var email = document.insautore.email.value;
     var pwd = document.insautore.pwd.value;

     // Espressione regolare dell'email
     var email_reg_exp = /([a-z0-9_\.\-])+\@(([a-z0-9\-]{2,})+\.)+([a-z0-9]{2,})+/;

        //Effettua il controllo sul campo NOME
        if ((nome == "") || (nome == "undefined")) {
           alert("Il campo Nome è obbligatorio.");
           document.insautore.nome.focus();
           return false;
        }
        //Effettua il controllo sul campo COGNOME
        else if ((cognome == "") || (cognome == "undefined")) {
           alert("Il campo Cognome è obbligatorio.");
           document.insautore.cognome.focus();
           return false;
        }
        //Effettua il controllo sul campo COGNOME
        else if ((cf == "") || (cf == "undefined")) {
           alert("Il campo Codice fiscale è obbligatorio.");
           document.insautore.cf.focus();
           return false;
        }
        //Effettua il controllo sul campo PASSWORD
        else if ((pwd == "") || (pwd == "undefined")) {
           alert("Il campo Password è obbligatorio.");
           document.insautore.pwd.focus();
           return false;
        }
        else if (!email_reg_exp.test(email) || (email == "") || (email == "undefined")) {
           alert("Inserire un indirizzo email corretto.");
           document.insautore.email.select();
           return false;
        }
        //INVIA IL MODULO
        else {
           document.insautore.action = "02-next1.jsp";
           document.insautore.submit();
        }
}

function Inslavoro() {
     // Variabili associate ai campi del modulo
     var titolo = document.inslavoro.titolo.value;
     var argomento = document.inslavoro.argomento.value;
     var path_file = document.inslavoro.path_file.value;
     var data_scaletta = document.inslavoro.data_scaletta.value;
     var evento_nome = document.inslavoro.evento_nome.value;
     var autore_id = document.inslavoro.autore_id.value;

     // Espressione regolare della data per la scaletta delle presentazioni
     // http://web.tiscali.it/alexmfm/reg_exp.html
     var data_scaletta_reg_exp = /[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}(\s[0-9]{1,2}:[0-9]{1,2}:[0-9]{1,2})?/;

        //Effettua il controllo sul campo NOME
        if ((titolo == "") || (titolo == "undefined")) {
           alert("Il campo Titolo è obbligatorio.");
           document.inslavoro.titolo.focus();
           return false;
        }
        //Effettua il controllo sul campo COGNOME
        else if ((argomento == "") || (argomento == "undefined")) {
           alert("Il campo Argomento è obbligatorio.");
           document.inslavoro.argomento.focus();
           return false;
        }
        //Effettua il controllo sul campo PASSWORD
        else if ((path_file == "") || (path_file == "undefined")) {
           alert("Inserire un Path_file nel formato 'c:\\\\dir\\\\file.ext'.");
           document.inslavoro.path_file.focus();
           return false;
        }
        else if (!data_scaletta_reg_exp.test(data_scaletta) || (data_scaletta == "") || (data_scaletta == "undefined")) {
           alert("Inserire una data nel formato 'AAAA-MM-GG' oppure 'AAAA-MM-GG hh:mm:ss'.");
           document.inslavoro.data_scaletta.select();
           return false;
        }
        else if ((evento_nome == "") || (evento_nome == "undefined")) {
           alert("Il campo Evento_nome è obbligatorio.");
           document.inslavoro.evento_nome.focus();
           return false;
        }
        else if ((autore_id == "") || (autore_id == "undefined")) {
           alert("Il campo Autore_id è obbligatorio.");
           document.inslavoro.autore_id.focus();
           return false;
        }
        //INVIA IL MODULO
        else {
           document.inslavoro.action = "02-next2.jsp";
           document.inslavoro.submit();
        }
}
La pagina.html ...
Codice HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>
  <title>SYSCONF | Admin's menù</title>
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  <meta name="Keywords" content="conferenze, gestione conferenze" />
  <meta name="Description" content="SYSCONF" />
  <link rel="stylesheet" type="text/css" href="../css/ws-style.css" />
  <script language="javascript"  type="text/javascript" src="../js/ws.js"></script>
</head>

<body onload="displayt(); MM_preloadImages('img/login2.jpg','img/loginreg2.jpg')">

<form name="inslavoro" method="post">
      <h3 align="left">Inserimento lavoro dell'autore</h3>
      <p align="left">Titolo:<input type="text" name="titolo" size="32" maxlength="32" /></p>
      <p align="left">Argomento:<input type="text" name="argomento" size="32" maxlength="32" /></p>
      <p align="left">Pathfile del lavoro:<input type="text" name="path_file" size="32" maxlength="128" /></p>
      <p align="left">Datatime di scaletta:<input type="text" name="data_scaletta" size="32" maxlength="32" /></p>
      <p align="left">Evento:<select name="evento_nome">
                            <option>sistemi adattativi</option><option>bd intelligenti</option><option>polline</option><option>einstein</option>
                       </select></p>
      <p align="left"><input name="autore_id" type="hidden" value="18" /></p>
      <p align="left"><input type="reset" value="Reset"/><input type="submit" value="Prosegui" onClick="Inslavoro()" /></p>
  </form>
</body>
</html>
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.

Ultima modifica di Matrixbob : 05-07-2005 alle 00:44.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 05-07-2005, 00:17   #4
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
AI AI, mi si incasina sui "SELECT" del form!!!

Help, ma non avete voi qualcosa di + semplice da implementare?!
Sto impazzendo!!!

__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 05-07-2005, 11:11   #5
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
Stavo pensando ad una funzione unica che controlla che tipo di campo è e di conseguenza seglie il test da fare, ma sono in alto mare, ho buttato giù questo inizio.
Penso che possa servire a tutti se la realizziamo, tnx.
Codice:
function doSubmit(url)
{
  // Puntatore all'oggetto form
  var F = document.form;
  var check = true;

  // Ciclo su tutti gli elementi del form
  for(var i = 0; i < F.length; i++) 
  {
   // puntatore all'oggetto elemento
   var elemento = F.elements(i);
   // controllo se l'elemento è di tipo "select"
   if (F.elements(i).type != "select-one") { check = false; }	
   if (check == false)
                           {
                            alert('Compilare il form correttamente!');
                           }
                 else 
                        {
                         check = true;
                         document.form.action = url;
                         document.form.submit();
                        }
  }
}
Solo che non conoscendo gli oggeti JS, non so bene cosa sto combinando!
H E L P ...

... da richiamre poi così:
Codice HTML:
<input type="button" value="Prosegui" onClick="doSubmit('02-next2.jsp');" />
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.

Ultima modifica di Matrixbob : 05-07-2005 alle 11:21.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 05-07-2005, 12:14   #6
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
Ho chiesto aiuto anche sul forum di HTML.IT, ma dubito che se l'aiuto non giunge dal miti HWUP allora giunga da la ...
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 05-07-2005, 13:27   #7
DigitalKiller
Senior Member
 
L'Avatar di DigitalKiller
 
Iscritto dal: Aug 2004
Città: Salento
Messaggi: 1080
Quote:
Originariamente inviato da Matrixbob
Ho chiesto aiuto anche sul forum di HTML.IT, ma dubito che se l'aiuto non giunge dal miti HWUP allora giunga da la ...
Scusami ho perso un po' il filo del discorso Possiamo ricapitolare cosa devi fare ed il problema?
__________________
Il 90% dei problemi riscontrati sui computer sono localizzabili tra la sedia e la tastiera, il restante 10% nella scopa della donna delle pulizie.
DigitalKiller è offline   Rispondi citando il messaggio o parte di esso
Old 05-07-2005, 23:40   #8
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
Quote:
Originariamente inviato da DigitalKiller
Scusami ho perso un po' il filo del discorso Possiamo ricapitolare cosa devi fare ed il problema?
Ciao socio!

INTRO AL PERSONAGGIO:
preciso che sono 1 di quei personaggi che deve fare 1 cosa e ne pensa altre 100 in mezzo, saltando da una soluzione ad un altra.

OBBIETTIVO:
sto implementando 1 aplz web (praticamente 1 sito) x gestire 1 sistema di conferenze.
La parte cliente va in PHP e la parte administrator va in J2EE.

SVILUPPO:
ho scelto il JSP alle Servlet ed ho scelto le DBTAGS per accedere al database MySQL.

INTRO AL PROBLEMA:
mentre i controlli sui dati inseriti (bene o male) lo so fare con la tecnica di PHP_SELF_SUBMIT. in JSP mi trovo spiazzato ed allora ho deciso di ricorrere al buon vecchio Javascript.

PROBLEMI:
[1] Essendo pseudo-programmatore Pascal/C/PHP ed 1 po' JAVA pensavo di cavarmela in 2 orette nell'implementare i controlli in Javascript ed invece no.
[2] Conosco poco gli oggetti di questo "ambiente".
[3] Stavo scrivendo 1 funzione di controllo per ogni FORM del sito ed ad 1 certo punto mi sono rotto ed ho pensato a se era possibile fare una sola funzione che si adattasse al problema.
Ad esempio che riconoscesse da sola il FORM di contesto e che controllasse il type del campo del form, scegliendo automaticamente il controllo da fare.
[4] Ad 1 certo punto mi sono accorto che si perdeva anche 1 campo hidden che mi porto dietro da inserire nel database.

CONCLUSIONE:
mi sento demoralizzato e cerco aiuto in voi prima di perdere chissà quanto tempo nel capire cosa è possibile e cosa meno, ed in che modo nel Javascript.

NUOVO OBBIETTIVO:
Portare a termine almeno una delle strada percorriibli.
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.

Ultima modifica di Matrixbob : 06-07-2005 alle 09:40.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 06-07-2005, 00:05   #9
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
Qui:
[JS] Controllo form generico: help!
pare sia all'ordine del giorno , una sciocchezza! Muahahh muaahahh ah ah .... ehhhhh
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 06-07-2005, 13:34   #10
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
Ho trovata questa:
Codice:
//funzione che verifica i radio buttons
function verif1() {
//ciclo per esplorare tutti i bottoni
	for(n=0;n<4;n++) {
//quando un bottone risulta checked si passa alla verifica successiva
		if(document.form1.radio[n].checked) {
			verif2(n)
			break
		}
//se nessun bottone risulta checked viene bloccato l'invio del form 
		if(!document.form1.radio[n].checked && n==3) {
			alert("Non hai selezionato un\n radio button")
			return false
		}
	}
}
//funzione che verifica le checkbox
function verif2() {
//setta le variabili che stabiliscono il numero minimo e massimo di chkbox spuntate
	max=0
	min=0
//nn2 è la variabile che memorizzare il valore della chkbox spuntata
	nn2=0
	for(nn=0;nn<4;nn++) {
		if(document.form1.chkbox[nn].checked) {
			max++
			nn2=nn
//se è spuntata più di una checkbox blocca l'invio del form
			if(max>1) {
				alert("Hai spuntato più di una checkbox")
				return false
			}
		}
//se non è spuntata nessuna chkbox blocca l'invio del form
		if(!document.form1.chkbox[nn].checked) {
			min++
			if(nn==3 && min!=3) {
				alert("Non hai spuntato una checkbox")
				return false
			}
		}
	}
//se esiste una sola chkbox spuntata prosegue nella verifica
	if(max==1) {
		verif3(n,nn2)
	}
}
//funzione che verifica la selection list
function verif3() {
	for(nnn=0;nnn<4;nnn++) {
//in caso di selezione si prosegue con la verifica successiva
		if(document.form1.select1.options[nnn].selected) {
		verif4(n,nn,nnn)
		break
		}
//senza opzioni selezionate l'invio del form si blocca
		if(!document.form1.select1.options[nnn].selected && nnn==3) {
			alert("Non hai selezionato\n un'opzione della lista")
			return false
		}
	}
}
//funzione che verifica che la textbox non sia vuota
function verif4() {
	txt1=document.form1.txt.value
	if(txt1=="") {
		alert("Non hai inserito del testo nella textbox")
		return false
	}
	else {
		verif5(n,nn,nnn,txt1)
	}
}
//funzione che verifica che la passwordbox non sia vuota
function verif5() {
	pwd1=document.form1.pwd.value
	if(pwd1=="") {
		alert("Non hai inserito una password nella passwordbox")
		return false
	}
	else {
		verif6(n,nn,nnn,txt1,pwd1)
	}
}
//funzione che verifica che la textarea non sia vuota
function verif6() {
	txta1=document.form1.txta.value
	if(txta1=="") {
		alert("Non hai inserito del testo nella textarea")
		return false
}
Ma come faccio capire quanti indici hanno le check box, i selct, etc .. ?!
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 06-07-2005, 13:52   #11
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
Seguendo lo stile di killer:
Codice:
function CheckAutore(form){
    var nome = form.nome.value;
    var cognome = form.cognome.value;
    var cf = form.cf.value;
    var email = form.email.value;
    var pwd = form.pwd.value;

    // Espressione regolare dell'email
	var email_re = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;

    //Effettua il controllo sul campo NOME
    if ((nome == "") || (nome == "undefined")) {
           alert("Il campo Nome è obbligatorio.");
           form.nome.focus();
           return false;
    }
    //Effettua il controllo sul campo COGNOME
    else if ((cognome == "") || (cognome == "undefined")) {
           alert("Il campo Cognome è obbligatorio.");
           form.cognome.focus();
           return false;
    }
    //Effettua il controllo sul campo CF
    else if ((cf == "") || (cf == "undefined")) {
           alert("Il campo Codice fiscale è obbligatorio.");
           form.cf.focus();
           return false;
        }
    //Effettua il controllo sul campo PWD
    else if ((pwd == "") || (pwd == "undefined")) {
           alert("Il campo Password è obbligatorio.");
           form.pwd.focus();
           return false;
    }
    //Effettua il controllo sul campo EMAIL
	if (!email_re.test(email) || (email == "") || (email == "undefined")) {
		alert('Inserire un indirizzo email valido!');
		form.email.focus();
		return false;
    }
    else return true;
}
}
Richiamato con:
Codice:
<form name="insautore" method="post" action="02-next1.jsp" onSubmit="return CheckAutore(this)">
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.

Ultima modifica di Matrixbob : 06-07-2005 alle 14:03.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 06-07-2005, 14:12   #12
DigitalKiller
Senior Member
 
L'Avatar di DigitalKiller
 
Iscritto dal: Aug 2004
Città: Salento
Messaggi: 1080
Quote:
Originariamente inviato da Matrixbob
Ho trovata questa:
Codice:
//funzione che verifica i radio buttons
function verif1() {
//ciclo per esplorare tutti i bottoni
	for(n=0;n<4;n++) {
//quando un bottone risulta checked si passa alla verifica successiva
		if(document.form1.radio[n].checked) {
			verif2(n)
			break
		}
//se nessun bottone risulta checked viene bloccato l'invio del form 
		if(!document.form1.radio[n].checked && n==3) {
			alert("Non hai selezionato un\n radio button")
			return false
		}
	}
}
//funzione che verifica le checkbox
function verif2() {
//setta le variabili che stabiliscono il numero minimo e massimo di chkbox spuntate
	max=0
	min=0
//nn2 è la variabile che memorizzare il valore della chkbox spuntata
	nn2=0
	for(nn=0;nn<4;nn++) {
		if(document.form1.chkbox[nn].checked) {
			max++
			nn2=nn
//se è spuntata più di una checkbox blocca l'invio del form
			if(max>1) {
				alert("Hai spuntato più di una checkbox")
				return false
			}
		}
//se non è spuntata nessuna chkbox blocca l'invio del form
		if(!document.form1.chkbox[nn].checked) {
			min++
			if(nn==3 && min!=3) {
				alert("Non hai spuntato una checkbox")
				return false
			}
		}
	}
//se esiste una sola chkbox spuntata prosegue nella verifica
	if(max==1) {
		verif3(n,nn2)
	}
}
//funzione che verifica la selection list
function verif3() {
	for(nnn=0;nnn<4;nnn++) {
//in caso di selezione si prosegue con la verifica successiva
		if(document.form1.select1.options[nnn].selected) {
		verif4(n,nn,nnn)
		break
		}
//senza opzioni selezionate l'invio del form si blocca
		if(!document.form1.select1.options[nnn].selected && nnn==3) {
			alert("Non hai selezionato\n un'opzione della lista")
			return false
		}
	}
}
//funzione che verifica che la textbox non sia vuota
function verif4() {
	txt1=document.form1.txt.value
	if(txt1=="") {
		alert("Non hai inserito del testo nella textbox")
		return false
	}
	else {
		verif5(n,nn,nnn,txt1)
	}
}
//funzione che verifica che la passwordbox non sia vuota
function verif5() {
	pwd1=document.form1.pwd.value
	if(pwd1=="") {
		alert("Non hai inserito una password nella passwordbox")
		return false
	}
	else {
		verif6(n,nn,nnn,txt1,pwd1)
	}
}
//funzione che verifica che la textarea non sia vuota
function verif6() {
	txta1=document.form1.txta.value
	if(txta1=="") {
		alert("Non hai inserito del testo nella textarea")
		return false
}
Ma come faccio capire quanti indici hanno le check box, i selct, etc .. ?!
Spero di non dire una cretinata, ma se non ricordo male c'è una funzione che ti restituisce tutti gli elementi del form. Quindi, ottenuto il numero di elementi, potresti usare un ciclo while all'interno del quale verifichi prima di tutto di che elemento si tratta (testo, checkbox, ecc) e poi verifichi le condizioni (es. casella di testo vuota, checkbox selezionata)
__________________
Il 90% dei problemi riscontrati sui computer sono localizzabili tra la sedia e la tastiera, il restante 10% nella scopa della donna delle pulizie.
DigitalKiller è offline   Rispondi citando il messaggio o parte di esso
Old 06-07-2005, 14:39   #13
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
Evento restituito dal JSP è un select.
Codice HTML:
<form name="inslavoro" method="post" action="02-next2.jsp" onSubmit="return CheckLavoro(this)">
      <h3 align="left">Inserimento lavoro dell'autore</h3>
      <p align="left">Titolo:<input type="text" name="titolo" size="32" maxlength="32" /></p>
      <p align="left">Argomento:<input type="text" name="argomento" size="32" maxlength="32" /></p>
      <p align="left">Pathfile del lavoro:<input type="text" name="path_file" size="32" maxlength="128" /></p>
      <p align="left">Datatime di scaletta:<input type="text" name="data_scaletta" size="32" maxlength="32" /></p>
      <jsp:include page = "evento-esistente.jsp" flush = "true" />
      <p align="left"><input name="autore_id" type="hidden" value="<%= pageContext.getAttribute("autore_id") %>" /></p>
      <p align="left"><input type="reset" value="Reset"/><input type="submit" value="Prosegui" /></p>
  </form>
Questo non controlla niente, ma non resituisce errore. E' apatico e apssivo!
Codice:
function CheckLavoro(form) {
     // Variabili associate ai campi del modulo
     var titolo = form.titolo.value;
     var argomento = form.argomento.value;
     var path_file = form.path_file.value;
     var data_scaletta = form.data_scaletta.value;
     var evento_nome = form.evento.value;

     // Espressione regolare della data per la scaletta delle presentazioni http://web.tiscali.it/alexmfm/reg_exp.html
     var data_scaletta_re = /^[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}(\s[0-9]{1,2}:[0-9]{1,2}:[0-9]{1,2})?$/;

     //Effettua il controllo sul campo TITOLO
      if ((titolo == "") || (titolo == "undefined")) {
           alert("Il campo Titolo è obbligatorio.");
           form.titolo.focus();
           return false;
      }
      //Effettua il controllo sul campo ARGOMENTO
      else if ((argomento == "") || (argomento == "undefined")) {
           alert("Il campo Argomento è obbligatorio.");
           form.argomento.focus();
           return false;
     }
     //Effettua il controllo sul campo PATH_FILE
     else if ((path_file == "") || (path_file == "undefined")) {
           alert("Inserire un Path_file nel formato 'c:\\\\dir\\\\file.ext'.");
           form.path_file.focus();
           return false;
     }
     //Effettua il controllo sul campo DATA_SCALETTA
     else if (!data_scaletta_re.test(data_scaletta) || (data_scaletta == "") || (data_scaletta == "undefined")) {
           alert("Inserire Data_scaltta nel formato 'AAAA-MM-GG' oppure 'AAAA-MM-GG hh:mm:ss'.");
           form.data_scaletta.focus();
           return false;
     }
     //Effettua il controllo sul campo EVENTO_NOME
     else if ((evento_nome == "") || (evento_nome == "undefined")) {
           alert("Il campo Evento è obbligatorio.");
           form.evento_nome.select();
           return false;
      }
     else return true;
}
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 06-07-2005, 15:41   #14
DigitalKiller
Senior Member
 
L'Avatar di DigitalKiller
 
Iscritto dal: Aug 2004
Città: Salento
Messaggi: 1080
Ho appena provato il tuo script, non mi ha dato nessun problema
Se usi firefox, prova ad utilizzare la console javascript per vedere eventuali errori
__________________
Il 90% dei problemi riscontrati sui computer sono localizzabili tra la sedia e la tastiera, il restante 10% nella scopa della donna delle pulizie.
DigitalKiller è offline   Rispondi citando il messaggio o parte di esso
Old 06-07-2005, 16:12   #15
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
Quote:
Originariamente inviato da DigitalKiller
Ho appena provato il tuo script, non mi ha dato nessun problema
Se usi firefox, prova ad utilizzare la console javascript per vedere eventuali errori
Ma quale script dici?!
Niente da fare, non è che è JSP che da fastidio?!
<jsp:include page = "evento-esistente.jsp" flush = "true" />

Il codice risoltante dal JSP è questo:
Codice HTML:
form name="inslavoro" method="post" action="02-next2.jsp" onSubmit="return CheckLavoro(this)">
      <h3 align="left">Inserimento lavoro dell'autore</h3>
      <p align="left">Titolo:<input type="text" name="titolo" size="32" maxlength="32" /></p>
      <p align="left">Argomento:<input type="text" name="argomento" size="32" maxlength="32" /></p>
      <p align="left">Pathfile del lavoro:<input type="text" name="path_file" size="32" maxlength="128" /></p>
      <p align="left">Datatime di scaletta:<input type="text" name="data_scaletta" size="32" maxlength="32" /></p>

      






<p align="left">Evento:<select name="evento_nome">
                            
                       </select></p>



      <p align="left"><input name="autore_id" type="hidden" value="3" /></p>
      <p align="left"><input type="reset" value="Reset"/><input type="submit" value="Prosegui" /></p>
  </form>
100.000.000 di spazzi mi mette!!!!!
Adesso devi andare da mio nonno da bravo nipote, stasera spero in una svolta.
Abbasso J2EE e abbasso JS.
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.

Ultima modifica di Matrixbob : 06-07-2005 alle 16:16.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 06-07-2005, 16:33   #16
DigitalKiller
Senior Member
 
L'Avatar di DigitalKiller
 
Iscritto dal: Aug 2004
Città: Salento
Messaggi: 1080
Forse è proprio quello che da fastidio. Prova ad eliminarlo e vedi come va
Ciao
__________________
Il 90% dei problemi riscontrati sui computer sono localizzabili tra la sedia e la tastiera, il restante 10% nella scopa della donna delle pulizie.
DigitalKiller è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA Oracle AI World 2026: in Europa prima la sovrani...
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort DS N°7 E-Tense: il SUV premium made in Melfi...
Recensione Samsung Galaxy Tab S12 Ultra: non chiamatelo tablet... è molto di più Recensione Samsung Galaxy Tab S12 Ultra: non chi...
Hyundai IONIQ 5 N, l'elettrica che finge di essere termica (e ci riesce da paura) Hyundai IONIQ 5 N, l'elettrica che finge di esse...
CES Unveiled Milan, l'IA diventa tecnologia fondativa e il commercio torna centrale CES Unveiled Milan, l'IA diventa tecnologia fond...
L’ex CEO di Intel Gelsinger punta su una...
Techly, quattro nuovi supporti TV fra mo...
Mass Effect sacrificato per Star Wars: i...
Gemini, addio al copia e incolla per cor...
13 miliardi per un colpo di stato? NVIDI...
L'agente AI Wabi crea mini-app su misura...
Edge è il primo browser a supportare Acc...
L'IA di Firefox ora compila i moduli da ...
Tracking pixel nelle email: cosa cambia ...
La GeForce RTX 5080 da 24 GB potrebbe ar...
Apple mette alle strette OpenAI, la caus...
Xbox ancora in calo: ecco com'è a...
Car of the Year 2027: sette finaliste e ...
Google Beam cambia tutto: arrivano le vi...
Curry Barker, il regista di Obsession, p...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 19:41.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v