Newsgroup: it.comp.lang.javascript
Titolo: problemi con esecuzione di funzioni in un form

Ciao a tutti... innanzitutto mi presento, sono Marco, novizio di
questa lista....
vi scrivo poichè ho la necessità di creare un form d'inserimento dati
in DB che abbia due principali caratteristiche che devo risolvere col
Javascript, ovvero non deve permettere l'invio multiplo delle stesse
informazioni (premendo ripetute volte il pulsante invio per esempio) e
deve possedere un form validator che garantisca l'inserimento dei dati
nei diversi campi. Un po' navigando, un po' con le mie forze sono
riuscito a scrivere i due codici che presi singolarmente funzionano
perfettamente... messi insieme invece no, cioè funziona solo quello
che viene richiamato per primo, mentre il secondo è saltato.
 
... come posso fare per far sì che i due comandi coesistano e
funzionino in armonia???
Posto il codice della pagina se può servire... grazie
anticipatamente!!
 
Marco Caparello
 
 
 
<html>
<head>
<script language="Javascript">
self.moveTo(0,0)
self.resizeTo(screen.availWidth,screen.availHeight)
</script>
<script language="JavaScript">
<!--
function controlla() {
var f = document.form1;
if (f.DENO_EME.value == ""){
alert("Inserisci la Denominazione di Emergenza.");
f.DENO_EME.focus();
return false;
}
if (f.DATA.value == ""){
alert("Inserisci la Data.");
f.DATA.focus();
return false;
}
if (f.COD_OP.value == ""){
alert("Inserisci il Codice di Operatività.");
f.COD_OP.focus();
return false;
}
if (f.LUOGO.value == ""){
alert("Inserisci il Luogo dell'Emergenza.");
f.LUOGO.focus();
return false;
}
if (f.DESCR_SIT.value == ""){
alert("Inserisci la Descrizione della Emergenza.");
f.DESCR_SIT.focus();
return false;
}
}
// -->
</script>
<script type="text/javascript">
function checksubmit(submitbtn){
submitbtn.form.submit()
checksubmit=blocksubmit
return false
}
function blocksubmit(){
if (typeof formerrormsg!="undefined")
alert(formerrormsg)
return false
}
</script>
<title>Aggiungi un'Emergenza nella Provincia di Torino</title>
</head>
<body background="../../../grafica/sfondi/sfondo_gestione.jpg"
bgproperties="fixed">
<table border="1" cellspacing="1" width="100%">
<tr>
<td bgcolor="#000080" height="1">
<p align="center"><b><font color="#FFFF00" size="6"><span
style="font-variant: small-caps"><font size="4">inserimento 
nuove emergenze</font> <br>
Provincia di Torino</span></font></b></td>
</tr>
</table>
<div align="center">
<center>
<form action="add-process.asp" method="post" name="form1" id="form1"
onSubmit="return controlla()">
<table border="0" cellpadding="4" width="400" bgcolor="#000000"
cellspacing="1" height="288">
<tr> 
<td width="199" bgcolor="#FFFFCC" height="30"><font size="2"
face="Verdana, Arial, Helvetica, sans-serif">Denominazione 
Emergenza </font></td>
<td width="199" bgcolor="#FFFFCC" height="30"> <p align="left"><font
size="2" face="Verdana, Arial, Helvetica, sans-serif">
<input name="DENO_EME" size="25">
</font> <font size="2" face="Verdana, Arial, Helvetica, sans-serif"> 
</font></td>
</tr>
<tr bgcolor="#FFFFCC"> 
<td width="199" height="35"><font size="2" face="Verdana, Arial,
Helvetica, sans-serif">Data<font size="1"> 
(GG/MM/AAAA)</font></font></td>
<td width="199" height="35"> 
<p align="left"> <font size="2" face="Verdana, Arial, Helvetica,
sans-serif"> 
<input name="DATA" size="25">
</font></td>
</tr>
<tr> 
<td bgcolor="#FFFFCC" height="35"><font size="2" face="Verdana, Arial,
Helvetica, sans-serif">Codice 
Operativo </font></td>
<td bgcolor="#FFFFCC" height="35"><select name="COD_OP" id="COD_OP">
<option value="BIANCO">BIANCO</option>
<option value="VERDE">VERDE</option>
<option value="GIALLO">GIALLO</option>
<option value="ROSSO">ROSSO</option>
</select></td>
</tr>
<tr> 
<td width="199" bgcolor="#FFFFCC" height="35"><font size="2"
face="Verdana, Arial, Helvetica, sans-serif">Luogo 
dell'Emergenza </font></td>
<td width="199" bgcolor="#FFFFCC" height="35"> <p align="left"> <font
size="2" face="Verdana, Arial, Helvetica, sans-serif"> 
<input name="LUOGO" size="25">
</font></td>
</tr>
<tr> 
<td width="199" bgcolor="#FFFFCC" height="36"><font size="2"
face="Verdana, Arial, Helvetica, sans-serif">Descrizione</font></td>
<td width="199" bgcolor="#FFFFCC" height="36"> <p align="left"> <font
size="2" face="Verdana, Arial, Helvetica, sans-serif"> 
<textarea rows="5" cols="25" name="DESCR_SIT"></textarea>
</font></td>
</tr>
<tr> 
<td height="36" colspan="2" bgcolor="#FFFFCC"> <p align="center">
<font size="2" face="Verdana, Arial, Helvetica, sans-serif"> 
<input type="submit" name="Submit" value="Aggiungi" onClick="return
checksubmit(this)">
<input name="button" type=button onClick="javascript:self.close();"
value="Annulla">
</font></td>
</tr>
</table>
</form>
</center>
</div>
<hr>
<table border="0" cellspacing="1" width="100%" height="39">
<tr> 
<td width="99%" height="37"><font size="1" face="Verdana"
color="#FF0000">© 
Novembre 2004 by 
A.N.P.AS
. Piemonte - <a
href="../../../pagine/informative/disclaimer.htm"
target="_blank"><b>Leggi 
il Disclaimer</b></a></font></td>
<td width="18%" height="37"><img
src="../../../grafica/loghi/Logo_anpas.gif" width="105" height="35"
border="0"></td>
</tr>
</table>
</body>
</html>
 

 checksubmit(this)">
Puoi mantenere la funzione chiamata "controlla()" (in modo da farti
cambiare il meno possibile) ma modifica il restante codice cosi':
<script type="text/javascript">
	function checksubmit(f){
		if ( controlla() ){
			f.btnSubmit.disabled=true;
			return true;
		}else{
			return false;
		}
	};
</script>
<form action="add-process.asp" method="post" name="form1" id="form1"
onSubmit="return checksubmit(this)">
<input type="submit" name="btnSubmit" value="Aggiungi" >
Ho cambiato il nome del pulsante di submit onde evitare problematiche.
Benche' js sia case sensitive, e' bene evitare parole riservate/gia'
esistenti, o che assomiglino ad esse.
-- 
ZER0://coder.gfxer.web-designer/
~ Io non soffro di pazzia, ne godo ogni minuto.
(I don't suffer from insanity, I enjoy every minute of it)
on air ~ "Maki Kimura - Beyond The Bounds"

cambiare il meno possibile) ma modifica il restante codice cosi':
ok ZERO... adesso provo , inizio col ringraziarti molto della
risposta... tieni d'occhio cmq questo post poichè temo che mi
risentirai presto (non sono molto sicuro di aver capito... )
;-)
Ciao.
Marco Cap.

 ha
scritto:
COme promesso rieccomi qui... ho modificato tutto come avevi segnalato
gentilmente tu ma ora, pur effettuando un controllo dei campi del form
non mi permette neanche l'invio dei dati, cioè cliccando su "Aggiungi"
semplicemente non fa nulla...??
Posto il codice così come l'ho risistemato... sicuramente ho fatto un
errore che non riesco a vedere...
Grazie, Marco Cap.
<html>
<head>
<script language="Javascript">
	self.moveTo(0,0)
	self.resizeTo(screen.availWidth,screen.availHeight)
</script>
<script language="JavaScript">
 
	function checksubmit(f){
		if ( controlla() ) {
		f.btnSubmit.disabled=true;
	return true;
		}else{
	return false;
		}
	};
	function controlla() {
		var f = document.form1;
			if (f.ID.value == ""){
			alert("Manca ID Emergenza.");
			f.ID.focus();
			return false;
		}
			if (f.DATA.value == ""){
			alert("Inserisci la Data.");
			f.DATA.focus();
			return false;
		}
			if (f.ORA.value == ""){
			alert("Inserisci ora di emissione
Aggiornamento.");
			f.ORA.focus();
			return false;
		}
			if (f.LUOGO.value == ""){
			alert("Inserisci il Luogo di Aggiornamento.");
			f.LUOGO.focus();
			return false;
		}
			if (f.DESCR_AGG.value == ""){
			alert("Inserisci la Descrizione di
Aggiornamento.");
			f.DESCR_AGG.focus();
	return false;
	}
}
</script>
<title>Aggiungi un Aggiornamento della Provincia di
<%=objRs("prov_1")%></title>
</head>
<body background="../../../grafica/sfondi/sfondo_gestione.jpg"
bgproperties="fixed">
    <table border="1" cellspacing="1" width="100%">
      <tr>
        <td bgcolor="#000080" height="1">
          <p align="center"><b><font color="#FFFF00" size="6"><span
style="font-variant: small-caps"><font size="4">inserimento 
        nuovi Aggiornamenti</font><br>
          Provincia di <%=objRs("prov_1")%></span></font></b></td>
      </tr>
    </table>
<div align="center"> 
  <center>
    <form action="add-process.asp" method="post" name="form1"
id="form1" onSubmit="return controlla()">
      <table border="0" cellpadding="4" width="400" bgcolor="#000000"
cellspacing="1" height="222">
        <tr bgcolor="#FF0000"> 
          <td width="199" height="35"><font size="2" face="Verdana,
Arial, Helvetica, sans-serif">Emergenza 
            (EME)</font></td>
          <td width="199" height="35"> <p align="left"><font size="2"
face="Verdana, Arial, Helvetica, sans-serif"> 
              <input name="ID" size="25" id="ID"
value="<%=rec("ID")%>" readonly>
              </font></td>
        </tr>
        <tr bgcolor="#FFFFCC"> 
          <td width="199" height="36"><font size="2" face="Verdana,
Arial, Helvetica, sans-serif">Data<font size="1"> 
            (GG/MM/AAAA)</font></font></td>
          <td width="199" height="36"> 
            <p align="left"><font size="2" face="Verdana, Arial,
Helvetica, sans-serif"> 
              <input name="DATA" size="25">
              </font></td>
        </tr>
        <tr bgcolor="#FFFFCC"> 
          <td height="36"><font size="2" face="Verdana, Arial,
Helvetica, sans-serif">Ora 
            corrente <font size="1">(HH.MM.SS)</font></font></td>
          <td height="36"> 
            <p align="left"><font size="2" face="Verdana, Arial,
Helvetica, sans-serif"> 
              <input name="ORA" value="<%= time %>" size="25">
              </font></td>
        </tr>
        <tr> 
          <td width="199" bgcolor="#FFFFCC" height="36"><font size="2"
face="Verdana, Arial, Helvetica, sans-serif">Luogo 
            dell'Emergenza</font></td>
          <td width="199" bgcolor="#FFFFCC" height="36"> <p
align="left"><font size="2" face="Verdana, Arial, Helvetica,
sans-serif"> 
              <input name="LUOGO" size="25" value="<%=rec("LUOGO")%>">
              </font></td>
        </tr>
        <tr> 
          <td width="199" bgcolor="#FFFFCC" height="36"><font size="2"
face="Verdana, Arial, Helvetica, sans-serif">Descrizione 
            dell'Aggiornamento</font></td>
          <td width="199" bgcolor="#FFFFCC" height="36"> <p
align="center"><font size="2" face="Verdana, Arial, Helvetica,
sans-serif"> 
              <textarea name="DESCR_AGG" cols="25" rows="5"
id="DESCR_AGG"></textarea>
              </font></td>
        </tr>
        <tr> 
          <td height="36" colspan="2" bgcolor="#FFFFCC"> <p
align="center"><font size="2" face="Verdana, Arial, Helvetica,
sans-serif"> 
              <input type="submit" name="btnSubmit" value="Aggiungi"


 onClick="javascript:self.close();" value="Annulla">
Lo pseudo-protocollo e' inutile negli event-handler, server solo in
riferimento ad URL; e usa nomi che non siano parole riservate o termini
troppo generici (come "button"):
<input name="btnClose" type="button" onclick="window.close()"
value="Annulla">
-- 
ZER0://coder.gfxer.web-designer/
~ "Problemi" e' il nome che gli informatici danno a quelli che
comunemente verrebbero definiti "disastri"; altrimenti si chiamano
"features".


 ha
scritto:
Ti farei un monumento!
Grazie ZERO sei stato gentilissimo e davvero disponibile!!
Ciao, Marco Cap.