javascript读取xml

梁军544

梁军544

2016-02-19 11:43

下面图老师小编跟大家分享javascript读取xml,一起来学习下过程究竟如何进行吧!喜欢就赶紧收藏起来哦~

代码如下:
/** 
 * 得到XML文件属性的集合对象 
 * @param xmlDoc XML对象 
 * @param name 属性名称 如: user 
 * @return 返回 Array 对象 
 * Example XML: 
 * ?xml version='1.0' encoding='utf-8'? 
 * ekuy 
 *   user 
 *     name 
 *       cnname小猪/cnname 
 *     /name 
 *     age27/age 
 *   /user 
 *   user 
 *     name 
 *       cnname小霞/cnname 
 *     /name 
 *     age26/age 
 *   /user 
 * /ekuy 
 */ 
function getXMLArray(xmlDoc, name) { 
  var keys = name.split('.'); 
  var node = xmlDoc.documentElement;      // 得到根节点 
  var rtn = new Array(); 
  var n = 0; 

  for(var i=0; ikeys.length; i++) { 
    var childs = node.childNodes;       // 得到子节点 
    var key = keys[i]; 
 for(var k=0; kchilds.length; k++) {       
   var child = childs[k]; 
   if(child.nodeName == key) {     // 判断子节点是否符合 
  if(i == keys.length-1) { 
          rtn[n] = child; 
    n++; 
  } else { 
    node = child; 
    break; 
  } 
   } 
 } 
  } 


  return rtn; 



/** 
 * 得到由getXMLArray函数得到对象中的值 
 * @param node 节点对象 
 * @param name  
 * @return 返回 String  
 */ 
function getValue(node, name) { 
  var keys = name.split('.'); 

  for(var i=0; ikeys.length; i++) { 
    var childs = node.childNodes;       // 得到子节点 
    var key = keys[i]; 
 for(var k=0; kchilds.length; k++) {       
   var child = childs[k]; 
   if(child.nodeName == key) {     // 判断子节点是否符合 
  if(child.childNodes.length == 1) {          
    // 如果没有字节点,返回值 
    return child.text; 
  } else {                                  
    // 还有子节点,继续分析 
    node = child; 
    break; 
  } 
   } 
 } 
  } 


  return ""; 




// 测试: 


var xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); 
xmlDoc.async = false; 
xmlDoc.loadXML("?xml version='1.0' encoding='utf-8'?ekuyusernamecnname小猪/cnname/nameage27/age/userusernamecnname小霞/cnname/nameage26/age/userusernamecnname小章/cnname/nameage25/age/user/ekuy"); 


var list = getXMLArray(xmlDoc, 'user'); 
for(var i=0; ilist.length; i++) { 
  var obj = list[i]; 
  document.write(getValue(obj, 'name.cnname')); 
  document.write(getValue(obj, 'age')); 
  document.write('br/'); 
}

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/webkaifa/)
展开更多 50%)
分享

猜你喜欢

javascript读取xml

Web开发
javascript读取xml

Excel Vba读取XML

电脑入门
Excel Vba读取XML

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

javascript读取RSS数据

Web开发
javascript读取RSS数据

如何读取XML文件内容

Web开发
如何读取XML文件内容

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

读取XML为行记录

Web开发
读取XML为行记录

读取XML的类 XmlReader

Web开发
读取XML的类 XmlReader

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

Applet小应用程序开发简介

Applet小应用程序开发简介

拖动层

拖动层
下拉加载更多内容 ↓