Newsgroup: it.comp.lang.javascript
Titolo: Selezionare un form fra diverse scelte

Dunque..innanzi tutto buongiorno e buona settimana a tutti.
Ho un piccolo dubbio, non un problema, dato che la soluzione già la conosco, 
ma non capisco dove si nasconda l'errore.
ho una pagina internet, con 3 pulsanti....ad ogni pulsante voglio che 
corisponda l'apertura di una pagina...
io l'ho pensata cosi (la soluzione)
Nella pagina..........................
<script language="javascript">
function scegliform(vForm)
{
 if  vForm == "form1"
 {
  document.forms['form_1'].submit;
 }
 if  vForm == "form2"
 {
document.forms['form_2'].submit;
 }
 if  vForm == "form3"
 {
document.forms['form_3'].submit;
 }
}
</script>
<form action="pagina_1.html" method="post" name="form1" id="form1"></form>
<!-- i pulsanti di comando son contenuti fuori dalle form -->
<!-- ogni pulsante assegna ad un'area nascosta un valore, che viene passato 
alla pagina successiva -->
<input type="hidden" name="azione" id="azione" value="">
<input type="button" name="1" id="1" value="pulsante 1" 
onclick="document.getElementById('azione').value='valore'; 
scegliform("form1");">
<input type="button" name="2" id="2" value="pulsante 2" 
onclick="document.getElementById('azione').value='valore';scegliform("form2");">
<input type="button" name="3" id="3" value="pulsante 3" 
onclick="document.getElementById('azione').value='valore';scegliform("form3");">
<form action="pagina_2.html" method="post" name="form2" id="form2"></form>
<form action="pagina_3.html" method="post" name="form3" id="form3"></form>
premendo sui vari pulsanti no succede proprio nulla....credo di aver 
dimenticato qualcosa ma non capisco cosa....
NB nei vari pulsanti ho messo un alert per sapere quando viene aattivato uno 
o l'latro, ma non sucede proprio nulla
Grazie
Emanuele 

 dimenticato qualcosa ma non capisco cosa....
A naso stavi assegnando a una *proprietà* denominata "submit" un valore.
Sempre a naso correggendo quindi come sopra indicato la form dovrebbe
andare, ma non passerà nulla dato che la tua "area nascosta" non si trova
all'interno della form stessa.
Ma cosa vuoi fare, passare sempre gli stessi dati ma a pagine diverse? Non
fai prima a cambiare la action anziché la form?
-- 
"Ti sei salvato
 o sei entrato in banca pure tu?"
									    A.V.

 o l'latro, ma non sucede proprio nulla
Ricordati di usare browser che dispongono di una javascript console (come
firefox, ad esempio) per fare questo genere di debugging. Rispetto a
browser come IE hai piů informazioni sulle quali poter lavorare.
-- 
~ "Nei film americani, qualsiasi problema che venga considerato
sufficientemente catastrofico, puo' essere risolto facendo esplodere uno
o piu' ordigni nucleari" (ZER0 & Cosimo)

 browser come IE hai più informazioni sulle quali poter lavorare.
Hai mai provato "debugger"? Gli ho dato una velocissima occhiata oggi, ti
fa eseguire javascript riga per riga. Non ho visto cosa combina in presenza
di errori, però.
 
http://support.microsoft.com/default.aspx?scid=kb;en-us;816173
-- 
"Non sai che ci vuol scienza
 ci vuol costanza
 ad invecchiare senza maturità"
									    F.G.

 fa eseguire javascript riga per riga. 
Se è lo script debugger è roba vecchia. Mi pare che venisse installato
automaticamente se usavi interdev; non so se adesso fa parte o meno di VS.
Se si tratta di quello, l'ho sempre disabilitato, mi ha causato più rotture
di scatole che altro.
-- 
~ Il tempo è quello che fai di lui.

 fai prima a cambiare la action anziché la form?
Non stavo passando un valore numerico a una submit....so che sarebe 
impossibile e fuori logica...probabilemtne mi son sbagliato a scrivere.
la function riceve un valore e in base a questo valore decido quale form 
attivare....solo dopo aver deciso quale form richamo la proprieta submit()
Avevo pensato di usare un solo form e assegnargli la Action prima di 
richiamare il submit, ma , sicuramente per mio errore, no funzionava 
ugualemnte....
Grazie
Emanuele 

 di scatole che altro.
Sì, è roba vecchia e anch'io la ho sempre tolta con fastidio. La avevo
vista però per gli errori e faceva schifo. Inserendo invece "debugger"
nello script te lo apre e ti fà eseguire il codice riga per riga. Mi è
sembrato carino e in rare circostanze può esser utile.
 
http://www.criosoftware.it/bak/TestDebugIE.htm
-- 
"E' l' ignoranza che crea l'intolleranza
 di gente cieca e senza coscienza"
									  S.S.S.

 vedi sopra...l'area nascosta è dentro il primo form
Ah quindi quello che hai postato non era corretto?
Hai comunque corretto come indicato (da me o da Zero, che è sempre molto
più prolisso ed esauriente di me)?


 nello script te lo apre e ti fà eseguire il codice riga per riga.
Lo potevi fare anche prima. Eseguire codice riga per riga, intendo. Sia in
presenza di errori che facendolo partire "a mano", sullo script attuale.
Non è una cosa che, personalmente, ho mai trovato fondamentale. Altrimenti
avrei installato anche Venkman.
-- 
~ "Lo dice il buon senso, ma il buon senso non è uno standard".
(Jeffrey Zeldman)

Grazie ZERO (E anche a Cristiano ovviamente)
Ho provato questa tua soluzione, e la trovo molto compatta anche perche mi 
consente di non inserire la funzione ma lavorare subito sui pulsanti.....
Noto che fai uso si XHTML...ottimo anceh questo , mi serve molto perchè sto 
cercando di usarlo anceh io (anceh s eme ne dimentico spesso data 
l'abitudine)
Mi scuso per eventuali errori di battitura o di fretta...ho gia postato in 
risposta a Cristiano alcune correzioni.
Grazi per le dritte su come usare certi comandi
Emanuele


> (un po' di dislessia ogni tanto non fa male... :-/ )
Un po' di dislessia? ma hai visto i miei post? porca paletta mi scappa 
sempre la seconda "n" di "non", la "ch" di "anche"...temo che dovro farmi 
raddrizzare le dita porca paletta....
Grazie comunque per la comprensione...mi accorgo cheno è facile postare in 
modo corretto....
Emanuele