Bonjour tout le monde,
Je suis actuellement en train de développer une petite application surtout basée
autour de javascript (IE uniquement), pour laquelle on me demande de traiter des
fichier XML comportant des balises HTML:
donnees.xml:
<root>
<block id="1">
<element>
du texte <strong>qui contient des balises</strong> en plein milieu
</element>
</block>
</root>
Et ca, je n'ai pas le choix. Le probleme se pose lorsque je veux editer la
partie texte de ELEMENT (dc en javascript IE):
je recupere le contenu ds une variable:
editedBlockTxt = root.getElementsByTagName("block[@id='1']/element")[0];
alert(editedBlockTxt.xml);
=> "du texte <strong>qui contient des balises</strong> en plein milieu"
Jusque là, tout va bien. Ce texte je l'envoie comme source ds un editeur wysiwyg
javascript (TinyMCE, pour ceux qui connaissent), j'edite le tout, je change du
texte, la typo, etc, et là c'est le drame: impossible de recuperer correctement
les balises:
texte = tinyMCE.getContent();
alert(texte);
=> "du texte <strong> qui contient des balises </strong> en plein milieu" (ok)
textNode = root.createTextNode(texte);
alert(textNode.data);
=> "du texte <strong> qui contient des balises </strong> en plein milieu" (ok)
alert(textNode.nodeValue);
=> "du texte <strong> qui contient des balises </strong> en plein milieu" (ok)
alert(textNode.xml);
"du texte <strong≶ qui contient des balises </strong≶ en plein
milieu" (plus ok :/ )
Voila mon probleme, il convertit automatiquement les "<" et ">" par "<" et
"$lg;", ce qui fait qu'a l'affichage, je n'ai plus la presentation souhaitée
avec le gras, ms en toute logique le texte des balises:
en HTML => du texte <strong> qui contient des balises </strong> en plein milieu
Biensur, si je recupere de nouveau le contenu de editedBlockTxt, j'aurai cette
fois ci:
alert(editedBlockTxt.xml);
=> "du texte <strong≶ qui contient des balises </strong≶ en plein
milieu" (pas bon du tout)
Et mon editeur wysiwyg ne va plus interpreter les balises, ms les considerer
comme du texte.
Bref, je patauge, etant donné qu'on n'a apparement pas acces en ecriture a la
propriétée ".xml", et qui si je sauvegarde le nouveau fichier xml je recupere
bien des "≶" et "<".
J'ai regardé aussi pour traiter de probleme du coté du XSL (avec des translate,
etc), ms non, puisque le coeur du probleme vient de la partie XML texte qui est
"mal" générée. Quelqu'un aurait une idée a me suggerer, pour que je puisse
continuer a garder ces fichier XML contenant des balises XHTML ?
Alex
--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !
Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
Cette liste est a votre disposition pour discuter en francais de
tout sujet technique lie a XML.
Pour resilier votre abonnement, envoyez un message contenant
la commande "unsubscribe" a xml-tech-request@xmlfr.org
(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
Received on Tue Aug 23 12:25:11 2005