首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

XML object 转化作 字符串

2013-09-06 
XML object 转化为 字符串// JQuery ajax 返回 XML Objectvar xml response +dode +aa +b

XML object 转化为 字符串


// JQuery ajax 返回 XML Object
var xml = "<response>" + 
            "<dode>" + 
      "<aa>" + 
 "<bb>tyik</bb>" + 
 "<qq>" +
    "<jj>dfdf</jj>" +
 "</qq>" + 
      "</aa>" + 
    "</code>" +
      "<message>message...</message>" + 
    "</response>";
         // 
var xmlDoc = $.parseXML(xml);
        // to string 

比如服务器返回了上面的 XML Object, 用JS(Jquery)接收处理.
现在需要把它转化为 JS 字符串 并且 输出到浏览器,要有XML的层级结构。就是把XML原样输出。
我试过用递归不过没写出来, 大家帮我看看, 帮我写个通用的函数( HTML特殊字符可以先不考虑 )
最好不要用 new XMLSerializer().serializeToString(..) 或 IE的 xmlDoc.xml
谢谢 JavaScript XML 对象
[解决办法]
<div id=view>fdfd</div>
<script>
var xml = "<response>" + 
            "<code>" + 
          "<aa>" + 
         "<bb>tyik</bb>" + 
         "<qq>" +
            "<jj>dfdf</jj>" +
         "</qq>" + 
          "</aa>" + 
        "</code>" +
          "<message>message...</message>" + 


        "</response>";
         // 
var xmlDoc = $.parseXML(xml);
$("#view").html(xml_view(xmlDoc));

function xml_view(xml) {
  var s = '';
  for(var i=0; i<xml.childNodes.length; i++) {
    if(xml.childNodes[i].nodeType == 1) {
      s += '<ul>&'+'lt;' + xml.childNodes[i].nodeName + '&'+'gt;';
      s += xml_view(xml.childNodes[i]);
      s += '&'+'lt;/' + xml.childNodes[i].nodeName + '&'+'gt;</ul>';
    }else s += xml.childNodes[i].nodeValue;
  }
  return s;
}
</script>

XML object 转化作 字符串

热点排行
Bad Request.