Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2018
    Messaggi
    4

    select onchange e script

    Presupposto: non ho idea del campo a cui appartiene questa domanda, quindi mi scuso se non è nella sezione giusta; la posto qui solo perché il codice su cui vorrei mi aiutaste sta nel pezzo di codice sotto "DOCTYPE html".

    Ho una select con varie scelte e vorrei che "onchange" mi venisse eseguita una mia funzione.
    <select id="prenotazioneScelta" onchange="impostaPrenotazione()" >

    Questa funzione l'ho definita in uno script come segue
    <script>
    function impostaPrenotazione(){
    //corpo
    }
    </script>

    Nel corpo ho messo una stampa per vedere se venisse eseguito, ma non viene mai eseguito.
    Avendo provato tutte le combinazioni possibili del tipo {onchange="impostaPrenotazione();"
    onchange='impostaPrenotazione()' onchange='impostaPrenotazione();'} ho immaginato che il problema sia nello script e quasi sicuramente è un errore sintattico perché purtroppo sto cercando di imparare da solo.

    Considerando che se metto
    <select id="prenotazioneScelta" onchange="alert('ciao')" >
    quando cambio selezione mi esce l'alert, perché non viene eseguita la mia funzione?

    Grazie a chiunque risponderà

  2. #2
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,657
    sposto nella sezione JS.

    intanto fornisci più informazioni possibili sulla funzione, altrimenti non potranno aiutarti.

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2018
    Messaggi
    4
    codice:
    function impostaPrenotazione(){
                var x = document.getElementById("prenotazioneScelta").value;
                prenotazioneScelta = x;
                prenotazione.setValore(prenotazioneScelta);
                System.out.println(prenotazioneScelta);
                prenotazione.setValoreLista(prenotazioneScelta.split(","));
                System.out.println(prenotazione.getValoreLista[0]);
    Questa è la funzione, dove prenotazione è un bean che può contenere una stringa e una lista di stringhe.
    Ultima modifica di Lucat95; 15-02-2018 a 11:24

  4. #4
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,657
    nota a margine:
    per postare codice sul forum ricorda di usare sempre il tag CODE (vedi tasto #, anche in modalità avanzata)
    buon lavoro

  5. #5
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,654
    Ciao, intanto apri la console developer mentre testi gli script così da vedere subito se ci sono errori di sintassi, codice o magari di inclusioni errate (tasto F12 e poi tab console).

    Assicurati che la tua funzione venga definita nel tag <script> all'interno del tag <head> e non dopo il tag SELECT che vai ad utilizzare.
    Se fosse dichiarata la funzione dopo il rendering della SELECT molto probabilmente avrai un errore del tipo "function ... undefined".
    L'alert funziona perchè usi direttamente javascript nell'attributo onChange.

    Prova a sto punto a mettere nella tua funzione solo un alert() così vedi subito se è un problema di codice al suo interno o solo del richiamo.

  6. #6
    codice:
    System.out.println(prenotazioneScelta);

    Questo è codice Java, non è codice Javascript.
    Hai scritto un miscuglio di due linguaggi differenti.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.