analyser html dans cdata en utilisant jquery ou javascript
Je suis un site d'alimentation qui ressemble à ce
<rss...>
<title> some title </title>
<content>
<![CDATA[ <div>this tag is ignored<div> who took the cookie in the cookie jar!? ]]>
</content>
</rss>
J'ai besoin de la totalité du contenu de la cdata à être affiché dans le code html. J'utilise jquery 1.9.1 et lorsque j'arrive à la partie contenu à l'aide de $(xml).find('rss content').text()
il ignore en fait l'ensemble de la <div>this tag is ignored<div>
partie. Une façon d'obtenir tout à l'intérieur de la CDATA à l'aide de javascript ou jquery?
source d'informationauteur Bahamut
Vous devez vous connecter pour publier un commentaire.
Les Chances sont de votre balisage n'est pas analysée comme XML par jQuery. Essayez de faire référence explicitement $.parseXML():
ligne de fond:
cet extrait de code de travail utilise jquery pour charger le fichier xml, puis il reçoit le 4ème occurrence de la balise de contenu (qui contient CDATA)
jQuery n'est pas le meilleur à l'analyse de documents XML à partir d'une chaîne. Il serait préférable d'utiliser le navigateur natif du DOM Parser. jQuery pouvez ensuite travailler avec le document XML analysé beaucoup mieux; sinon, je crois qu'il va essayer de travailler avec elle comme le XML, ce qui produit des résultats bizarres.
http://jsfiddle.net/ExplosionPIlls/2MJt9/
EDIT: basée sur la réponse à faire,
$.parseXML
est probablement une meilleure option, car elle devrait fonctionner avec d'autres navigateurs, mais vous auriez à utiliser dans un mode similaire à celle ci-dessus puisque le résultat est un document XML plutôt qu'un objet jQuery.texte à partir d'CDATA en jQuery peut être récupéré par obtenir de childNodes de données:
où la dataR a été lu à partir YOUR_URL et txt contient des informations à partir CDATA