|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Aug 2004
Città: Milano
Messaggi: 1310
|
[javascript] Controllo su select
Ho una select di questo tipo:
Codice:
<select name="sesso" onblur="check_sesso()"> <option value="">---</option> <option value="Maschio">Maschio</option> <option value="Femmina">Femmina</option> </select> C'è un alternativa al "onblur" che mi permette di fare un controllo appena l'utente apre il menu e seleziona una delle option? |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Apr 2008
Città: Varese
Messaggi: 406
|
Quote:
__________________
IT Developer at Hardware Upgrade S.r.l. self.love(this.me()); |
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Aug 2004
Città: Milano
Messaggi: 1310
|
Perfetto era onchange quella che stavo cercando...
Poi un'altra cosa, dovrei fare la stessa cosa su una data, quindi invece di esserci una select ce ne sono 3. Richiandando la funzione con l'onchange su ogni select non mi sembra molto giusto, infatti appena uno sceglie il giorno, visualizza l'errore. La cosa che forse più si avvicina alla perfezione che mi è venuta in mente è mettere l'onchange sulla testa select, in questo modo fai il controllo quando l'utente ha selezionato tutti e 3 i campi. L'unica pecca di questo controllo è che se l'utente per esempio clicca subito su anno gli visualizza l'errore. C'è modo di fare una cosa simile, però che non dipenda dal ordine con cui l'utente seleziona i campi? |
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: Apr 2008
Città: Varese
Messaggi: 406
|
Quote:
Mettere un disabled sulle restanti select e attivarle SOLO dopo aver selezionato la precedente?
__________________
IT Developer at Hardware Upgrade S.r.l. self.love(this.me()); |
|
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Dec 2002
Messaggi: 3359
|
aggiungi un'opzione di selezione non valida, per così dire di "parcheggio", tipo un "Seleziona il giorno/mese o anno".
In questo modo l'errore lo dai fuori solo se la data non è corretta quando tutti e tre i valori non sono quelli di parcheggio. Altrimenti controlli la data solo all'invio del form. |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Aug 2004
Città: Milano
Messaggi: 1310
|
Grazie a entrambi per l'aiuto adesso provo tutte e due le soluzioni poi valuto la migliore.
Una cosa però, ho disabilitato mese e anno, per attivarli ho messo l'evento onchange in giorno, però non so cosa scriverci dentro per attivarli. Codice:
<select name="giorno" onchange="???"> <select name="mese" disabled="true" onchange="???"> <select name="anno" disabled="true"> |
|
|
|
|
|
#7 | |
|
Senior Member
Iscritto dal: Apr 2008
Città: Varese
Messaggi: 406
|
Quote:
o Codice:
<select name="mese" disabled="disabled" onchange="???"> Codice:
<select name="mese" disabled onchange="???"> Per l'onchange dovresti scrivere una funzione JS che cancelli il disabled o lo converta in enabled
__________________
IT Developer at Hardware Upgrade S.r.l. self.love(this.me()); |
|
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Aug 2004
Città: Milano
Messaggi: 1310
|
A ecco, infatti mi sembrava troppo semplice inserirlo direttamente li...
Provo a fare una funzione con js e ti faccio sapere come va. |
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Aug 2004
Città: Milano
Messaggi: 1310
|
Ok, risolto con una semplice funzione di questo tipo:
Codice:
...
if (document.registrazione.mese.disabled == true) { document.registrazione.mese.disabled = false; }
else {
if (document.registrazione.anno.disabled == true) { document.registrazione.anno.disabled = false; }
else {
...
|
|
|
|
|
|
#10 | |
|
Senior Member
Iscritto dal: Apr 2008
Città: Varese
Messaggi: 406
|
Quote:
__________________
IT Developer at Hardware Upgrade S.r.l. self.love(this.me()); |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 20:43.




















