Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    6

    problema funzione javascript per cambiare il testo in un div

    Salve a tutti. Spero nella collaborazione di qualche anima pia per risolver un problema idiota.
    la situazione è la seguente.

    <div id="x" onclick="scegliTesto(1)">A</div>
    <div id="y" onclick="scegliTesto(2)">B</div>
    <div id="z" onclick="scegliTesto(3)">C</div>

    il mio obiettivo è richiamare tramite funzione javascript, cliccando su A o B o C lo specifico testo in un div apposito

    <div id="contenitore"></div>

    la funzione javascript (dichiarata nell'head) è la seguente:

    function scegliTesto(i)
    {
    var el = document.getElementById("contenitore");

    if(i == 1)
    {
    el.innerHTML =

    testo 1</p>;
    }

    else if(i == 2)
    {
    el.innerHTML =

    testo 2</p>;
    }

    else if(i == 3)
    {
    el.innerHTML =

    testo 3</p>;
    }

    return el;
    }

    (se metto il tag

    testo</p> tra gli apici mi da errore)

    Tralasciando che, molto probabilmente, il testo va prima svuotato e poi scritto ad ogni click (almeno che innerHTML non sovrascrive, e non ne ho idea).

    Eseguo, ma al click non succede nulla e non riesco a capire dove sbaglio. Dico come ulteriore informazione che il div dove il testo deve apparire è contenuto in un altro div ma non credo cambi qualcosa, visto che prendo l'elemento tramite id.

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    innerHTML scrive una stringa, quindi il contenuto va tra apici, singoli o doppi
    ovviamente se in quella stringa fosse presente lo stesso apice usato come delimitatore ad esso va premesso un backslash \

    per quanto riguarda il dubbio se sovrascriva o meno, sovrascrive

    ciao

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    6
    Sono riuscito a risolvere in altro modo, nascondendo i div e rendendoli visibili con il click opportuno.

    Comunque testerò anche nell'altro modo risolvendo il problema degli apici (imparare e tentare non fa mai male). Quindi non è un problema di logica ma di sintassi.
    Grazie mille per la veloce delucidazione.

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.