如何将cdata从xml转换为html

时间:2012-01-09 12:57:12

标签: javascript jquery html xml cdata

我通过AJAX接收XML数据,XML包含一些CDATA值。

示例:

<xml>
      <mytag>
            <![CDATA[
                <img src="http://l.yimg.com/a/i/us/we/52/14.gif"/><br />
                <b>Current Conditions:</b><br />
            ]]>
      </mytag>
</xml>

并且我喜欢在div-tag上使用class =“title”b-tag中的内容和div-tag class =“current-img”中的img-tag对src

<html>
      <body>
            <div class="weather">
                <div class="title">...</div>
                <div class="current-img">...</div>
            </div
      </body>
</html>

现在我从数据中创建了一个jQuery对象并尝试使用.text()获取数据但是如何才能获得<img src="..."/>

的特殊数据
var $weather = $(".weather");
$.ajax({
   url: "yahooweather.php?w=782458",
   context: document.body,
   success: function(data){
        $xml = $(data).find("xml mytag");

            $weather.find(".title").html($xml.children("b")); //this isnt working!


   var str = $xml.text()

1 个答案:

答案 0 :(得分:0)

http://forum.jquery.com/topic/how-to-convert-xml-with-cdata-to-html-and-back-again#14737000002282604

  

我遇到了同样的问题,只是通过发送带有xml答案的正确标题(text / xml)来解决它。   现在.text()在CDATA标签之间返回正确的html内容。

看起来它取决于正确的内容类型。