Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 22

Discussione: Evento su input option

  1. #1

    Evento su input option

    Ciao a tutti
    Domandina su evento javascript che dovrebbe essere scatenato dalla selezione di un option in una select.

    Dato questo pezzo di codice:


    codice:
    <select name= 'azione' id= 'azione'>
    						<option value='contratto'> </option>
    						<option value='contratto'> Invio                     </option>					
                                                    <option value='contratto'> Azione
    						<option value='contratto'> Azione </option>
    					</select>
    ...avrei semplicemente bisogno che selezionando, per esempio, la prima opzione, si scateni un evento javascript (per la precisione venga richiamata questa funzione:


    codice:
    //Toggle
    
    
    var rec;
    
    function toggle(x) {
    	if (x.style.display == 'none') {
    		x.style.display = '';
    	} else {
    		x.style.display = 'none';
    	}
    }
    (che in altri punti della pagina funziona benissimo).
    Ho provato così:


    codice:
    <select name= 'azione' id= 'azione'>
    						<option value='contratto'> </option>
    						<option value='contratto' onClick='javascript:toggle(rec);'>Invio </option>
    						<option value='contratto'> Azione </option>
    						<option value='contratto'> Azione </option>
    						<option value='contratto'> Azione </option>
    					</select>
    ...ma ovviamente non succede nulla.

    Qual è il modo corretto, o meglio l'evento corretto?

    Vi ringrazio molto

  2. #2
    ciao, prova così:

    codice:
    <select name= 'azione' id= 'azione' onchange="toggle(rec);">
    saluti

  3. #3
    Così funziona, avevo già provato.
    Però io ho bisogno praticamente che vengano attivate cose diverse a seconda della scelta..
    non esiste un evento sulle option?

    Grazie

  4. #4
    codice:
    <select name= 'azione' id= 'azione' onchange="toggle(this.options[this.selectedIndex].value);">
    così a toggle passi il value dell'option correntemente selezionata.

    saluti

  5. #5
    Oh!!
    Vero!
    Giustissimo.
    Grazie mille, provo così!!

  6. #6
    Allora...

    Scritto così


    codice:
    					<select onChange="javascript:toggle(contr);" id= 'azione'>
    						<option value='contr'> </option>
    						<option value='contr'> Invio </option>
    						<option value='contr'> Azione </option>
    						<option value='contr'> Azione </option>
    						<option value='contr'> Azione </option>
    					</select>
    ...funziona.

    Invece scritto così (che è come lo vorrei):


    codice:
    					<select onChange="javascript:toggle(this.options[this.selectedIndex].value);" id= 'azione'>
    						<option value='contr'> </option>
    						<option value='contr'> Invio </option>
    						<option value='contr'> Azione </option>
    						<option value='contr'> Azione </option>
    						<option value='contr'> Azione </option>
    					</select>
    Non funge più.


    Dove sbaglio?

  7. #7
    ciao, la sintassi che ti ho consigliato è corretta: quale errore ti viene notificato?

    saluti

  8. #8
    Semplicemente non esegue l'istruzione. O meglio, come ho riportato, nel primo caso la esegue, nel secondo caso no...
    Però di errori non ne dà.

    Grazie ancora!

    EDIT

    Ho sbagliato, scusate: l'errore lo riporta.
    Dice "style.display è nullo o non è un oggetto".


  9. #9
    Ho fatto delle prove come questa:


    codice:
    <select onChange="alert(this.options[this.selectedIndex].value);" id= 'azione'>
    						<option value='contr'> </option>
    						<option value='contr'> Invio Contratto </option>
    						<option value='contr'> Invio Fattura (non attivo) </option>
    						<option value='contr'> Azione </option>
    						<option value='contr'> Azione </option>
    					</select>
    ...e funzionano.
    Mi si apre un alert con sopra scritto contr.

    Come mai l'altro no?

  10. #10
    Funziona anche per esempio una cosa del genere:


    codice:
    <select OnChange="window.open(this.options[this.selectedIndex].value, 'New')" id= 'azione'>
    ...non è che il problema sta proprio nel fatto che è coinvolto l'attributo style e che il 'value' di this.options[this.selectedIndex].value non può averlo?
    Non so più che pensare...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.