javascript : problème de variables

Discussion dans 'Web, design' créé par II phl II, 18 Juillet 2006.

Statut de la discussion:
Fermée.
  1. Offline
    II phl II Touriste
    Bonjour à tous,

    Je ne parviens pas à afficher le contenu des variables que j'ai créé dans une page HTML

    Voici mon code :

    HEAD :
    <SCRIPT language="Javascript">
    var mavariable = "blabla"
    </SCRIPT>


    BODY :
    <ul>
    <a href="#":colere:li onclick="document.getElementById('expl-serv').write(mavariable);">Lien</li:colere:/a>
    </ul>


    Donc le but, est que qd je clique sur le lien, le contenu de la variable mavariable apparaisse dans un span dont l'id est expl-serv

    Si qqn sait comment résoudre le problème, il me ferait grand plaisir :D

    Merci à tous

    EDIT : ne faites pas attention à l'espace qui se trouve dans (' expl-serv')
    Il n'est pas dans mon code, j'ai beau le supprimer en éditant mon msg ... il revient sans arret :?:

    je parviens à changer le contenu du span comme ceci :
    <a href="#":colere:li onclick="document.getElementById('expl-serv').innerHTML = 'blabla';">Lien</li:colere:/a>
    mais j'aimerais utiliser des variables dans un soucis de clarté
    II phl II, 18 Juillet 2006
    #1
  2. Offline
    II phl II Touriste
    en fait cela fonctionne lorsque je mets une seule variable mais comme mon UL se compose de 8 li cela foire

    j'ai trouvé une parade en faisant comme suit :

    HEAD :

    <script type="text/javascript">
    <!--
    function Affiche1(toThis)
    {
    if (document.getElementById)
    {
    document.getElementById("expl-serv").innerHTML = toThis;
    }
    else if (document.all)
    {
    document.all["expl-serv"].innerHTML = toThis;
    }
    }
    mavariable1 = "blabla";

    function Affiche2(toThis)
    {
    if (document.getElementById)
    {
    document.getElementById("expl-serv").innerHTML = toThis;
    }
    else if (document.all)
    {
    document.all["expl-serv"].innerHTML = toThis;
    }
    }
    mavariable2= "bloblo";
    //-->
    </script>


    et en BODY :

    <a href="#":colere:li onclick="Affiche1(mavariable1)">Lien1</li:colere:/a>
    <a href="#":colere:li onclick="Affiche2(mavariable2)">Lien2</li:colere:/a>


    N'y aurait-il pas moyen de faire une seule et même fonction qui fonctionnerait ?
    II phl II, 18 Juillet 2006
    #2
  3. Offline
    Tifox ou pas
    Ou si tu ne veux pas utiliser de fonction : tu mets le onclick dans la balise du lien <a> et tu mets mavariable comme contenu de ton innerHTML.

    Tifox, 18 Juillet 2006
    #3
  4. Offline
    II phl II Touriste
    J'ai essayé comme ça au début mais ça ne fonctionne pas :/

    avec une seule variable définie et un seul lien avec onclick ça fonctionne mais dès que je mets une seconde variable et un second lien avec son onclick rien ne va plus :?:
    II phl II, 18 Juillet 2006
    #4
  5. Offline
    II phl II Touriste
    Pour ceux qui ça intéresserait j'ai enfin trouvé une solution :

    HEAD :

    <script type="text/javascript">
    <!--
    function Affiche(toThis)
    {
    if (document.getElementById)
    {
    document.getElementById("expl-serv").innerHTML = toThis;
    }
    else if (document.all)
    {
    document.all["expl-serv"].innerHTML = toThis;
    }
    }
    var1 = "blabla";
    var2 = "bloblo";
    var3 = "blubu";

    //-->
    </script>


    BODY :

    <ul>
    <li:colere:a href="#" onclick="Affiche(var1)">Lien1</a:colere:/li>
    <li:colere:a href="#" onclick="Affiche(var2)">Lien2</a:colere:/li>
    <li:colere:a href="#" onclick="Affiche(var3)">Lien3</a:colere:/li>
    </ul>


    sans oublier de mettre l'endroit où le texte doit s'afficher :

    <span id="expl-serv":colere:/span>
    II phl II, 19 Juillet 2006
    #5
Statut de la discussion:
Fermée.