Pagina 3 di 3 primaprima 1 2 3
Visualizzazione dei risultati da 21 a 25 su 25
  1. #21
    Ariciao, come accennato mi chiedevo (ultima domanda, poi mi taccio) come autoselezionare di default un valore da una analoga combobox. Cerco di selezionare il valore "ITA - ITALIANO" nel campo Lingue da questo menu a cascata di questa pagina (il campo predefinito è vuoto come gli altri nella pagina). Ti giro anche un video con il Listener aperto, da cui si evince che anche qui è attivo lo stesso plugin jquery Chosen. Grazie ancora!
    Ultima modifica di Annuitcoeptis; 05-05-2023 a 21:34

  2. #22
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,771
    Quote Originariamente inviata da Annuitcoeptis
    (ultima domanda, poi mi taccio)
    ora che ci stavo prendendo gusto

    Quote Originariamente inviata da Annuitcoeptis
    Cerco di selezionare il valore "ITA - ITALIANO" nel campo Lingue
    Ti chiedo: tu hai già provato a fare qualcosa? cosa?
    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

  3. #23
    Non mi provocare ché avrei un'altra domanda ghiotta... Dal mio piccolo ho tentato di uniformarmi al tuo script con questo, ma forse sono lontano dalla soluzione (risulta anche sintatticamente errata):
    codice:
    document.querySelector('#idcdLingua1_chosen .chosen-results').addEventListener('click', e => {
        if (e.target.classList.contains('active-result')){
             document.getElementById("idcdLingua1").value = 'ITA';
     }
     }
    Ultima modifica di Annuitcoeptis; 06-05-2023 a 10:50

  4. #24
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,771
    Quote Originariamente inviata da Annuitcoeptis
    ma forse sono lontano dalla soluzione
    Beh, in questo caso non dovrebbe esserci bisogno di applicare il listener per l'evento click.
    Come tu stesso hai indicato, a te interessa selezionare di default quel valore. Andrà quindi fatto all'apertura della pagina, a prescindere quindi dal click sulle voci del menu a discesa creato da Chosen.

    Questa semplice riga, che hai inserito nella tua prova:
    codice:
    document.getElementById("idcdLingua1").value = 'ITA';
    può andare bene eseguita da sola, infatti vai ad applicare il valore al select, che è l'elemento originale anche se viene nascosto con l'applicazione del Chosen.

    Questo elemento infatti è quello che conta per il form in sé. Di fatto, proseguendo l'azione, dovrebbe funzionare anche solo impostando quella riga perché il form dovrebbe basarsi sui valori degli elementi originali, anche se l'elemento costruito da Chosen non viene aggiornato a schermo.

    Per aggiornare l'elemento Chosen, si dovrebbe applicare il suo specifico metodo (vedi relativa documentazione), quindi una cosa di questo tipo:
    codice:
    const campo_lingua = document.getElementById('idcdLingua1');
    campo_lingua.value = 'ITA';
    $(campo_lingua).trigger("chosen:updated");
    Ma, a quanto pare, questo non puoi farlo sul tuo script a meno di non includere jQuery e relativo plugin Chosen, come già indicato in precedenza.

    Puoi comunque forzarne l'aggiornamento via Vanilla JavaScript con una cosa del genere:
    codice:
    setTimeout(() => {
      const campo_lingua = document.getElementById('idcdLingua1');
      const campo_lingua_chosen = document.getElementById('idcdLingua1_chosen');
      campo_lingua.value = 'ITA';
      const index = campo_lingua.selectedIndex;
      const testo = campo_lingua.options[index].text;
      campo_lingua_chosen.querySelector(':scope > .chosen-single > span').innerText = testo;
    },100);
    Questo infatti agisce direttamente sui vari elementi, il select originale e i componenti costruiti con Chosen.
    In questo caso il timer è necessario per fare in modo che queste righe siano eseguite dopo che il Chosen ha costruito i suoi elementi, e quindi siano disponibili.

    Prova e fai sapere.



    Quote Originariamente inviata da Annuitcoeptis
    Non mi provocare ché avrei un'altra domanda ghiotta
    a questo punto bisogna chiedere all'amministratore se può essere aggiunta sul forum una sezione specifica: "Userscript di Annuitcoeptis"

    Scherzo, ovviamente puoi porre sul forum tutte le domande che vuoi, basta che siano pertinenti e non si aggroviglino tra loro nelle varie discussioni.

    Con quest'ultima già abbiamo sforato rispetto all'oggetto in discussione. Capisco che il contesto è sempre il medesimo e che per te possa essere poco pratico riepilogare la questione userscript per ogni discussione che proponi, ma è comunque preferibile separare le varie discussioni anche per permettere una facile ricerca e consultazione per gli eventuali altri utenti che possono incontrare uno stesso problema (tra i tanti specifici da te affrontati).

    Ti invito quindi ad aprire delle nuove discussioni per evitare di andare "troppo" offtopic. Eventualmente puoi sempre mettere dei link tra una e l'altra discussione per avere, se serve, un riferimento sul contesto da tenere in considerazione per mantenere il filo del discorso anche senza riepilogare lo scenario.

    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

  5. #25
    Come volevasi dimostrare, colpito e affondato al primo colpo, l'ultimo script è quello che funziona, grazie mille, non ci sarei mai arrivato! A presto alla prossima discussione, concordo senz'altro sull'opportunità di elaborarla ex novo, né avrei problemi a farlo! Grazie ancora!

Tag per questa discussione

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.