[AJAX] Entités HTML extraites d'un XML avec JS pas interprétées
Salut, je suis en train de faire une petite application en AJAX. Une liste avec des filtres sous forme de case à cocher.
Tout fonctionne très bien hormis qu'il existe encore un petit problème au niveau des caractères spéciaux. Je travaille qu'avec des caractères sous la forme d'entités HTML et encodage UTF-8 (base de données MySQL et fichier XML compris).
Le problème c'est lorsque je parcours mon XML avec JavaScript et que je récupère les données pour les afficher dans un tableau que je crée à la volée, les entités HTML apparaissent telle quelles au lieu d'afficher les caractères coresspondants.
Voilà à quoi ressemble mon XML :
Code:
1 2 3 4 5 6 7 8 9 10
|
<users>
<user id="1">
<name><![CDATA["GUILLARD"]]></name>
<firstname><![CDATA["Aurélien"]]></firstname>
<phone>xxxxxxxxxx</phone>
<mobile>xxxxxxxxxx</mobile>
<mail>xxxxxxxxxx@gmail.com</mail>
</user>
</users> |
Je récupère les données de cette manière en JS
Code:
1 2
|
var text = removeQuotes(getText(items.item(i).childNodes[1]) + " " + getText(items.item(i).childNodes[0])); |
removeQuotes() est une fonction perso pour enlever les apastrophes générées par les CDATA et getText() est une fonction perso pour utiliser .text ou .textContent suivant les navigateurs webs.
Et donc, à l'affichage , j'ai :
Code:
1 2
|
Aurélien GUILLARD xxxxxxxxxx@gmail.com xxxxxxxxxx xxxxxxxxxx |
Au lieu d'avoir :
Code:
1 2
|
Aurélien GUILLARD xxxxxxxxxx@gmail.com xxxxxxxxxx xxxxxxxxxx |
Quelqu'un a une idée de pourquoi les entités HTML ne sont pas interprétées ?
Merci beaucoup ;)