Partage
  • Partager sur Facebook
  • Partager sur Twitter

Balise HTML insérée dynamiquement différente à l'original

    26 août 2011 à 16:04:58

    Bonjour,

    Je suis en train de rechercher une solution à un problème que je ne peux pas soumettre ici, mais j'ai pu constater lors de mes investigations la chose suivante.
    J'insère de manière dynamique en mettant le code javascript directement dans la page Web (je ne peux pas le mettre dans un fichier JS à part pour des raisons de traduction de chaînes de caractères) dans la ligne suivante (je ne vous donne que la partie qui coïncide avec ce que j'obtiens pour simplifier) :
    ...
    toolbar += '<input id="bold" type="button" title="Gras » [b]…[/b]"  onclick="insertTag(\'[b]\',\'[/b]\',\'\')" />';
    ...
    

    Or lorsque je regard ele code généré dans ma page (j'utilise l'extension Webdevelopper sur Firefox pour ça), j'obtiens ça dans ma page HTML :
    <input id="bold" title="Gras » [b]…[/b]" onclick="insertTag('[b]','[/b]','')" type="button">

    Le type a été déplacé a la fin de la balise et surtout, la barre oblique finale (obligatoire pour le doctype xhtml strict) a disparu. Pour toutes les autres balises du même style j'ai le même problème.
    Autre souci remarqué :
    toolbar += <br />
    

    Donne dans la page HTML :
    <br>
    


    Peut-être que mes soucis viennent de ça... Pas d'erreurs dans la console JS (d'ailleurs pas d'erreur non plus dans HTML validator alors qu'il devrait le faire, mais peut-être que le code généré n'est pas pris en compte...).

    Merci d'avance pour votre aide. :)
    • Partager sur Facebook
    • Partager sur Twitter
      26 août 2011 à 16:13:09

      Je crois que le code est réinterprété par WebDevelopper, Firebug fait la même chose ;)
      • Partager sur Facebook
      • Partager sur Twitter
        26 août 2011 à 18:24:16

        Citation : JL95

        Je crois que le code est réinterprété par WebDevelopper, Firebug fait la même chose ;)


        Je me doutais un peu que ça devait être quelque chose comme ça. Merci pour la confirmation. Ceci dit, ça n'arrang epas mes affaires concernant la résolution de mon problème.
        Une petite question concernant les barres obliques contenues dans les balises html insérées via Javascript : Faut-il toutes les échappées avec des barres obliques inverses ?
        Je m'explique. Si je veux ajouter dynamiquement le code suivant :
        <input id="url" type="button" title="URL" onclick="window.open('plugins/ezbbc/link.php?textarea_name=req_message', 'Link', 'height=350, width=600, top=100, left=100, toolbar=no, menubar=no, location=no, resizable=yes, scrollbars=no, status=no'); return false;" />
        

        Pour l'instant je fais ça :
        toolbar += '<input id="url" type="button" title="URL" onclick="window.open(\'plugins\/ezbbc\/link.php?textarea_name=<?php echo $textarea_name ?>\', \'Link\', \'height=350, width=600, top=100, left=100, toolbar=no, menubar=no, location=no, resizable=yes, scrollbars=no, status=no\'); return false;" \/>';
        

        A chaque barre oblique j'ajoute une barre oblique inverse (devant la "/" bien entendu) pour l'échapper. Est-ce correct ? Y-a-t'il d'autres caractères à échapper ?
        • Partager sur Facebook
        • Partager sur Twitter
          26 août 2011 à 18:32:55

          nonon normalement tu as juste a échapper tes quotes
          • Partager sur Facebook
          • Partager sur Twitter
            26 août 2011 à 18:50:26

            Citation : JL95

            nonon normalement tu as juste a échapper tes quotes


            J'ai trouvé que pour des questions de validation de code les balises fermantes insérées de cette manière doivent également comporter un backslash.
            Exemple :
            </span>
            

            Donnerait en JavaScript :
            toolbar += '<\/span>';
            


            Source : http://htmlhelp.com/tools/validator/pr [...] tml.fr#script ;)

            En attendant, j'ai pas résolu mon problème. J'ouvrirai une nouvelle discussion pour ça, si j'arrive à simplifier la formulation du problème...
            Merci pour tes interventions :)
            • Partager sur Facebook
            • Partager sur Twitter
              26 août 2011 à 18:52:57

              alors c'est bien possible, je retire... ;)
              • Partager sur Facebook
              • Partager sur Twitter

              Balise HTML insérée dynamiquement différente à l'original

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
              • Editeur
              • Markdown