Newsgroup: it.comp.lang.javascript
Titolo: visualizzazione col Netscape

Ho fatto una form per l'inserimento dati che poi vengono inviati tramite
mail. Ho usato html e javascript. Con l'Explorer funziona che è una
meraviglia, ma col Netscape (6.2) niente. Sul Netscape è abilitato
javascript (infatti i messaggi di alert funzionano) però scompaiono le
scritte e lo sfondo (è come se non riconoscesse lo stile esterno css) e non
funziona neppure l'action (all'invio non va alla pagina che stabilisco io) e
neanche parte la mail...
Non riesco proprio a trovare la soluzione... Qualcuno ha qualche idea?
Grazie in ogni caso.
Francesca

 (Oscar Wilde)
Hai ragione, grazie.
Ecco il codice. Francesca
<html>
<head>
<link rel="stylesheet" type="text/css" href="form.css">
<script type="text/javascript">
     function convalidaForm()
 {
 var moduloOk = true
 var txtMsg = ""
 problema=document.form.problema.value
 if (problema==null || problema=="")
 {
 moduloOk=false;
 txtMsg="\nInserire la DESCRIZIONE DEL PROBLEMA.";
 }
 utente=document.form.utente.value
 if (utente==null || utente=="" || utente=="nome e cognome")
 {
 moduloOk=false;
 txtMsg=txtMsg+"\nInserire un NOME UTENTE valido.";
 }
 if (moduloOk==false)
 {
 alert("Attenzione!!\n"+txtMsg);
 return false;
 }
 else
 {
 alert("I dati sono stati inviati correttamente.");
 form.method="post";
 form.action="
http://www2.springfirm.it/cgi-bin/FormMail.pl
";
 return true;
 }
 }
</script>
</head>
<body>
<form name="form"
 onSubmit="return convalidaForm();">
  (...)
 <input type="submit" value="invia" onClick="valErrRipetuto() &
dataCorrente() & oraCorrente();">
   &nbsp;
 <input type="reset" value="annulla">
</form>
</body>
</html>

 return true;
L'errore e' questo.
Devi riferirti alla Form in questo modo:
document.forms["form"].method="POST";
document.forms["form"].action="
http://www2.springfirm.it/cgi-
bin/FormMail.pl";
.. Ma non puoi semplicemente definire questi due valori del tag <form>? 
Tanto se la funzione dell'onsubmit restituisce false, non viene eseguito 
alcun submit.
Non capisco poi il perche' dell'onclick del submit.. e che cosa vorresti 
che facesse..
-- 
C'ya,
ZER0
  :. job profile - coder.gfxer.webDesigner
"Quanti angeli danzano sulla punta di uno spillo?"

 ha scritto nel messaggio
news:MPG.17684be01...@powernews.libero.it...

Grazie! Per riferirmi alla form seguirò il tuo consiglio. Sull'Explorer però
funziona in modo uguale. Proverò domani sul Netscape (ora non ho la
possibilità...).
Originariamente il method e l'action erano sul tag <form>, poi facendo prove
su prove li ho spostati... Però ora non c'è più la necessità che stiano
nello script e credo tu abbia ragione. Quindi si trovano di nuovo nel tag
<form>.
L' onClick del submit è uno stratagemma per non far passare la pagina nel
caso in cui i dati inseriti siano errati. Prima senza l' onClick mi veniva
sì fuori il messaggio di errore, ma la pagina cambiava... Ho risolto così...
Gli stili css sono questi:
body
{
background-color=#666699;
font-family:verdana;
font-size:100%;
color:white;
}
Domani provo e poi ti faccio sapere se fuziona sul Netscape con questi
cambiamenti. Intanto grazie 1000!!!
Francesca

 sì fuori il messaggio di errore, ma la pagina cambiava... 
Non se dai in pasto al submit un "return false".. :)
Ti ho chiesto dell'onClick perche' la sintassi non e' ben chiara.
Hai usato l'and binario invece che logico, ed hai omesso il "return" 
all'inizio delle tre funzioni.
Lo script di verifica form, lo puoi sistemare in questo modo:
<script>
function convalidaForm(f){
	var txtMsg = "",
 		problema=f.problema.value,
		utente=f.utente.value;
	txtMsg+=(problema==null || problema=="")?"\nInserire la 
DESCRIZIONE DEL PROBLEMA.":"";
 	txtMsg+=(utente==null || utente=="" || utente=="nome e 
cognome")?"\nInserire un NOME UTENTE valido.":"";
	if (txtMsg==""){
 		alert("Attenzione!!\n"+txtMsg);
 		return false;
 	}
</script>
<form name="form" onSubmit="return convalidaForm(this);" method="post" 
action="..">
	<input type="submit" value="invia">
	<input type="reset" value="annulla">
</form>
E' ottimizzabile, ma non volevo solo "aggiustare il tiro" in quel che 
avevi scritto.
Ho eliminato l'alert in cui diceva che erano stati inviati al server per 
due motivi. Il primo, che e' "falso". Ovvero i dati non sono ancora 
stati inviati :) Se ci sono problemi alla cgi, o al server in cui c'e' 
la cgi, non vengono processati. Il secondo, che solitamente si 
presuppone che se non ti vengono date avvertenze, cio' che hai inserito 
vada bene.. non e' carino trovarsi a cliccare un alert per aver fatto 
bene le cose. :)
E poi, eventuali notifiche di quel genere, solitamente vengono fatte 
alla "risposta".. ovvero dal cgi stesso.
Se c'e' qualcosa che nn torna, o che da' problemi, fammelo sapere :)


 Se c'e' qualcosa che nn torna, o che da' problemi, fammelo sapere :)
Ho fatto come mi hai detto. Prima di cambiare la funzione e lasciando l'
onClick funzionava e funzionavano pure i messaggi di alert... Ora i dati
passano in ogni caso e l'alert non funziona piů... Ma l'imbranata sono io!
:-)
Rimangono gli stili css, di cui proprio il Netscape non vuole sapere...
Scusa la mia ignoranza e ti ringrazio tanto per tutto, per i suggerimenti e
il tempo che mi hai dedicato.
Ciao! Francesca

 il tempo che mi hai dedicato.
Nessuno nasce con la scienza infusa.. L'importante e' che si abbia la 
volonta' di imparare :)


 6.2 o 4.x?
Il Netscape che uso è il 6.2, e non prende gli stili (solo del mio file)...
Non capisco perchè...
Grazie ancora...
Francesca

 Non capisco perchč...
Ti rispondo via mail, visto che mi hai mandato tutti i file necessari, 
ok? :)
Cmq l'inghippo del css te lo dico subito :)
Hai scritto:
background-color=#666699;
invece di:
background-color:#666699;
:)
Come sempre, IE passa sopra a tutto..
