Newsgroup: it.comp.lang.javascript
Titolo: gestire le opzioni di una select

CIao a tutti.
Domanda:
avendo una select, è possibile al cambio di selezione, intercettare il 
valore selezionato e passarlo a una funzione?
mi spiego con esempio
<script type="text/javascript">
 funzione nascondicampo(vScelta)
{
if (vScelta = "si")
  {
    document.getElementByID('soprannome').style.display = 'block';
  }
   else
  {
    document.getElementByID('soprannome').style.display = 'none';
  }
}
</script>
.......nel modulo .......
Hai un soprannome?
<select name="nomignolo" id="nomino" size="1" 
onchange="nascondicampo(document.getElementByID('nomino').value; return 
false;">
    <option value="si" select selected>SI, certo</option>
    <option value="no" select>No, grazie </option>
    <option value="nonso" select>Non lo so </option>
</select>
scrivi il tuo soprannome
<input type="text" size="30" id="soprannome" >
I0o vorrei che il campo di testo "soprannome" apparisse solo nel caso in cui 
si scegliesse la voce "si" e rimanesse nascosto nel caso delle altre due 
scelte
Mi dite se la soluzione che ho postato è corretta? A me non funziona...
Emanuele 

 <input type="text" size="30" id="soprannome" >
<input type="text size="30" id="soprannome" />
Dovresti iniziare a scrivere codice validabile secondo la DTD XHTML (anche
solo transitional).
-- 
"When you have eliminated the impossible, whatever remains,
however improbable, must be the truth."

 solo transitional).
alcune cose le ho già inserite, come lo slash in chiusare dei tag, pero a 
volte me ne dimentico, fino a quando non faccio il controllo con un buon 
validatore.... io uso HomeSite 5 come editor e quindi poi devo ripassare il 
tutto nel validatore
Grazie dell'aiuto Zero
Emanuele

 document.getElementById("soprannome").style.display=vScelta=="si"?"block":"none";
non sono riuscito ad utilizzare queste due varianti .... soprattutto 
l'operatore ternario (""?"":"")
sono riuscito a nascondere le righe, usando style.visibility = 
hidden/visible
ma non sono riuscito a far spaire compoletamente, le righe con style.display 
= block/none
altra cosa che no h ocapito e perchè, se mi fa sparire correttamente una 
riga selezionando l'opzione "nascondi", la stessa riga, cambiando selezione 
!"visualizza", non me la fa riapparire....
Grazie
Emanuele

 purtroppo l'ho testato con IE....mancanza mia
Prova a testarlo con firefox, ti darà più indicazioni sugli errori nella js
console.


 !"visualizza", non me la fa riapparire....
Vedi un po' che cosa ti dice la js console di firefox.


 altri tipi di elementi.
ho provato ad applicare le tue soluzioni anche agli elementi TR della 
tabella e funzionano, solamente che non riesco a usare il 
display="block/none" ma solo il visibility
Firefos non l'ho installato perche mi (stranamente) mi chiede di configurare 
un server sul pc che lo ospita...per ora uso opera, anche s emi apre no sia 
un granchè per gli errori di js
Graize
Emanuele 

 un server sul pc che lo ospita...
Mi sembra davvero strano: stiamo parlando del browser Firefox scaricabile
dal sito di 
mozilla.org
?
Ti consiglio di trovare un modo di installarlo, è utilissimo per lo
sviluppo.
-- 
~ La realtà è un'illusione causata dall'assenza di alcool.