Newsgroup: it.comp.lang.javascript
Titolo: modifica action del form in base alla selezione di una select

Salve a tutti!
Ho un quesito da porre.
Dispongo di un form del genere:
<form action="
nomestato_ecco.it/vai.php
" method="post" target="_blank"
id="imp_login" name="imp_login">
<input type="hidden" name="actionID" value="" />
<input type="hidden" name="load_frameset" value="1" />
<input type="hidden" name="autologin" value="0" />
<input type="hidden" name="server_key" value="imap" />
<input type="hidden" name="new_lang" value="it_IT" />
<input value="" tabindex="1" name="imapuser" type="text" />
<input type="password" tabindex="2" name="pass" />
<select name="url" id="url">
<option value="
italia_ecco.it
" >
italia_ecco.it
</option>
<option value="
francia_ecco.it
">
francia_ecco.it
</option>
<option value="
spagna_ecco.it
">
spagna_ecco.it
</option>
<option value="
russia_ecco.it
" >
russia_ecco.it
</option>
<option value="
brasile_ecco.it
">
brasile_ecco.it
</option>
<option value="
panama_ecco.it
">
panama_ecco.it
</option>
</select>
<input src="images/accedi.gif" tabindex="4" onClick="return
submit_login();" name="loginButton" type="image" >
</form>
data questa form, vorrei riuscire modificare l'url della action del
form in base a una delle scelte della select e a inviare a quella
action i dati della form
esempio: se selezione lo stato panama, vorrei che la action della form
diventasse
action="
panama_ecco.it/vai.php
" e che inviando i dati facesse
riferimento a quella action.
come posso procedere?
avete qualche esempio o sapete come posso fare a risolvere.
Ringrazio chiunque possa darmi una mano
in attesa di voi
vi saluto
pizeta

paol...@gmail.com
 ha scritto:

la select andrebbe cambiata in questo modo....
<select name="url" id="url" 
onchange="getElementById('imp_login').action=this[this.selectedIndex].value+'/vai.php'">
aggiungendo il controllo onchange.
ogni volta che cambia il valore selezionato, ne prendiamo il valore 
(this.[this.selectedIndex].value) e lo mettiamo su action della form.
saluti.
Ricki

 riferimento a quella action.
ok, chiaro, sei nel posto giusto :)
una soluzione alternativa a quella già postata è la seguente
<select name="url" id="url"
onchange="this.form.action=this.value+'/vai.php'">
solo che è un po' più portabile e sintetica

Ugo ha scritto:

^_^

 onchange="getElementById('imp_login').action=this[this.selectedIndex].value+'/vai.php'">
Lo dico a te come a paolopira: evita di usare lo stesso valore sia per
il name che per l'id; per questioni di buona programmazione "logica" e
"pratica".
Logica, perché significano due cose diverse, tant'è il name può essere
multiplo mentre l'id deve essere univoco.
Pratica, perché alcuni browser (le varie versioni di IE/Win, per dirne
una) non fanno differenza tra "name" e "id".
Questo crea dei comportamenti diversi tra IE ed il resto del mondo dei
browser, generando effetti anomali in alcuni script.
E quindi, un modo sicuro per evitare di trovarti in quella situazione,
è dare valori distinti. Così sei certo di non sbagliare. :)
 
-- 
~ "Il semble que la perfection soit atteinte non quand il n'ya plus
rien à ajouter, mais quand il n'ya plus rien à retrancher"
(A. de Saint-Exupéry)

grazie a tutti quanti :D
veramente troppo gentili