141 messaggi dal 08 luglio 2004
Cià ragazzi, ho un problemino...
ho un form che per essere inviato necessita di alcuni campi valorizzati. Usa JS voi direte... fatto dico io ma non funzia e nn capisco xchè.
La funzione è questa

function ControllaForm()
{
TxtAlert=""
if (document.NomeForm.NomeCampo.value==""){TxtAlert="A30";}
if (document.NomeForm.NomeCampo.value==""){TxtAlert=TxtAlert+", "+"B1";}

if (TxtAlert==""){return true;}
else{alert("E' necessario inserire un valore alla domanda/e: "+TxtAlert);return false;}
}

e nn capisco dove sbaglio.
Cià a tutti e grazie cmq.
11.886 messaggi dal 09 febbraio 2002
Contributi
in che senso non funziona? hai un errore?

dovresti chiamare quella funzione sull'onsubmit del form. Prova così:

<form method="post" action="tuapagina.asp" onSubmit="return ControllaForm()">

quel return in grassetto è importante, altrimenti non ti funziona.
ciao
Modificato da BrightSoul il 03 settembre 2004 12.48 -

Enjoy learning and just keep making
32 messaggi dal 08 novembre 2001
www.marinweb.net
Buongiorno,

lo script in se' e' corretto, al massimo puoi modificare

TxtAlert=""

con:

var TxtAlert="";

Verifica se nel form i nomi dei campi hanno maiuscole/minuscole uguali (JS e' case sensitive) e come devi "uscire" da questa funzione.
Puoi provare a modificare

if (TxtAlert==""){return true;}

con:

if (TxtAlert=="") { document.NomeForm.submit();}

e vedere che effetto fa.

Saluti.
D.

Davide Marin
http://www.marinweb.net
141 messaggi dal 08 luglio 2004
Si questo era sottinteso ma il problema era più subdolo (era perchè l'ho risolto). Nn funzionava perchè la MsgBox compariva qualunque valore inserissi... ma il problema reale che nn avevo previsto è che lui il controllo lo eseguiva su quelle che lui credeva fossero TXT invece sono combo e quindi:

function ControllaForm()
{
TxtAlert=""
if (document.NomeForm.NomeCombo.options[0].selected){TxtAlert="NomeCombo";}
if (document.NomeForm.NomeCombo.options[0].selected){TxtAlert="NomeCombo";}
if (TxtAlert=="") {return true;}
else {alert("E' necessario inserire un valore alla domanda/e: "+TxtAlert);return false;}
}

<FORM Action="" Method="post" Name="NomeForm" language="javascript" onSubmit="return ControllaForm()">

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.