XML07:封装JsXml类

XML教程 07: 常用工具类 (JSXml)

JsXml:里面封装了XML最常用的操作方法。

 

1 XML<-> File

提供XML与文件之间的转换方法

JsXml.toFile(doc, file, encoding)

JsXml.FromFile(file)

 

2 XML <-> String

提供XML与字符串之间的转换方法

JsXml.toString (doc, encoding)

JsXml.fromString(encoding)

 

3 查找子元素

提供按路径查找子元素的方法

例如,

Element target = JsXml.getElement (parent,  "settings/main/target")

即在parent下依次按层次寻找 <settings>,  <main> , <target> 子元素

 

4 添加子元素

JsXml.addElement(parent, name, value)

 

5 获取子元素的值

JsXml.getTextInt( parent, name, defValue)

JsXml.getTextLong( parent, name, defValue)

JsXml.getTextString( parent, name, defValue)

JsXml.getTextBoolean( parent, name, defValue)

当值不存在(null)、或格式不对时,返回默认值。内部已经自动trim掉空白字符。

 

6 获取元素的属性的值

JsXml.getAttrInt(element, attr, defValue)

JsXml.getAttrLong(element, attr, defValue)

JsXml.getAttrString(element, attr, defValue)

JsXml.getAttrBoolean(element, attr, defValue)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
javascript封装的通用解析和操作xml文件数据工具(含测试使用代码) javascript封装的通用解析和操作xml文件数据工具(含测试使用代码) 测试数据: 西游记 吴承恩 红楼梦 曹雪芹 三国演义 罗贯中 水浒传 施耐庵 //config参数:xmlPath文件地址;dataType数据格式-json或arry,默认为array。 var xmlUtils = new XmlUtils({ xmlPath:"/xmlData/book.xml", dataType:"xml" }); //获取XML内容 alert(xmlUtils.toString()); var rs = xmlUtils.getNodesTextByName(['name','author']); //把上面的dataType改为array或者不为json此处就能得到值 document.getElementById("xmlOpTest").innerHTML += '取得所有的文本节点的数组: '+rs + ''; var root = xmlUtils.getRoot(); //alert(root); xmlUtils.createNode('publish', '中国电力出版社',{id:'id0001'},root); xmlUtils.createCDATANode('publish', '中国&电力出版社',{},root); //设置属性 xmlUtils.setAttribute(root,'testId','test'); //修改属性 xmlUtils.setAttribute(root,'testId','test0000000000'); alert(xmlUtils.toString(root)); //删除第一个节点 publish xmlUtils.removeChild(xmlUtils.getNodesByXpath('//root/publish')[0]); alert(xmlUtils.toString(root)); var node = xmlUtils.getFirstChild(); //+ xmlUtils.hasAttributes(node) +''; document.getElementById("xmlOpTest").innerHTML += '判断是否有子节点: '+ xmlUtils.hasChildNodes(node) + ' ------ 判断是否有属性:'; document.getElementById('xmlOpTest').innerHTML += '得到节点的第一个节点: '+xmlUtils.getTagName(node) + "---" + xmlUtils.getText(node) +' ======== 节点型:' + xmlUtils.getNodeType(node) + ''; node = xmlUtils.getNextNode(node); document.getElementById('xmlOpTest').innerHTML += '得到节点的第一个节点下一个节点: '+xmlUtils.getTagName(node) + "---" + xmlUtils.getText(node) +''; node = xmlUtils.getLastChild(); document.getElementById('xmlOpTest').innerHTML += '得到节点的最后一个节点: '+xmlUtils.getTagName(node) + "---" + xmlUtils.getText(node) +'';
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值