IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Insertion balise html avec innerHTML


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre habitu�
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    10
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 10
    Par d�faut Insertion balise html avec innerHTML
    Bonjour,
    Je dois int�grer plusieurs balises html (ex : <div id="mysection"><div class = "mycontainer"><h1>mytitle</h1></div></div>) pour formater visuellement certaines donn�es (dans l'exemple "mytitle").

    Pour �tre plus concret, dans mon HTML j'ai une balise <span id="datahere"></span> qui ressort les donn�es en javascript que je dois ainsi modifier :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    function Bigdata(title, subtitle, type) {
            const mydata = document.getElementById('datahere');
            mydata.innerHTML += title + subtitle + (type ? ' <strong>(type is ' + type + ')</strong>' : '') +'<br/>';
        }
             //élément dans lequel les données sont initialisées, visible dans un autre <span>
            const sprit = document.getElementById('sprit');
     
            //lorsqu'un message donné est reçu
            sprit.addEventListener(SpritEvents.MessageSprit, ({ data }) => {
     
                Bigdata('Sprit', data.text, data.type);
                // s'il y a des actions, nous proposons des liens
                if (data.actions) {
                    var links = '';
                    for (var i = 0; i < data.actions.length; i++) {
                        if (i > 0) {
                            links += ', ';
                        }
                        let act = data.actions[i];
                        links += '<a data-val="' + act.value + '">' + act.title + '</a>';
                    }
                    Bigdata('Sprit', links);
                }
            });
    Mon probl�me, car novice, et que je n'arrive pas � int�grer les balises qui doivent "contenir" des donn�es (titre, sous-titre, type) AVEC des liens s'il y a des actions ...
    si j'ajoute mes balises comme ceci :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    mydata.innerHTML += '<div id="mysection"> <div class="mycontainer"><h1>' + title + '</h1>' + subtitle + (type ? ' <strong>(type =' + type + ')</strong>' : '') +'<br/></div></div>';
    cela n'entoure pas le tout, les div et le h1 sont dupliqu�s : entoure d'un c�t� le titre, le sous-titre, le type et de l'autre c�t� les liens... la structure ressort ainsi :
    Code HTML : S�lectionner tout - Visualiser dans une fen�tre � part
    <div id="mysection"><div class="mycontainer"><h1>title</h1>subtitle <strong>(type = the_type)</strong><br/></div></div> <div id="mysection"> <div class="mycontainer"><h1></h1><a data-val="">link1</a>,<a data-val="">link2</a>)<br/></div></div>
    Je ne sais pas comment m'y prendre... je vois bien que J'esp�re que vous pourrez m'aider

  2. #2
    Mod�rateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 211
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Is�re (Rh�ne Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 211
    Par d�faut
    Bonjour,
    cela n'entoure pas le tout, les div et le h1 sont dupliqu�s
    dans ta fonction Bigdata tu affectes un observateur d'�v�nement, addEventLister dans lequel tu appelles cette m�me fonction, qui va ajouter un autre observateur d'�v�nement et ainsi de suite ..., d'autant que tu refais un autre appel � cette fonction dans ton if, il est donc normal qu'il y ait duplication de code.

  3. #3
    Membre habitu�
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    10
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 10
    Par d�faut
    Merci NoSmoking pour cette explication, je n'avais pas bien saisi le fonctionnement/d�roulement de ce code.

    Niveau int�gration de mes balises html, je les ai donc supprim� de mydata.innerHTML et je les ai int�gr�es lorsque le message donn� est re�u.

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. perte de balises html avec AJAX super bizarre
    Par shadeoner dans le forum G�n�ral JavaScript
    R�ponses: 1
    Dernier message: 14/07/2009, 17h23
  2. [RegEx] supprimer une balise html avec son contenu
    Par waldoun dans le forum Langage
    R�ponses: 7
    Dernier message: 06/02/2008, 11h19
  3. Insertion balise html dans Textarea
    Par flow-bolox dans le forum G�n�ral JavaScript
    R�ponses: 17
    Dernier message: 13/07/2007, 16h43
  4. balise html avec dreamwaver
    Par hammouch dans le forum Dreamweaver
    R�ponses: 1
    Dernier message: 27/02/2007, 00h33
  5. Insertion code html avec javascript
    Par totoranky dans le forum G�n�ral JavaScript
    R�ponses: 2
    Dernier message: 08/02/2006, 16h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo