加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

XML DOM学习笔记(JS)

发布时间:2020-12-16 05:17:30 所属栏目:百科 来源:网络整理
导读:1. 加载XML文档: varxmlDom = new ActiveXObject( " MSXML2.DOMDocument " ); xmlDom.load( " filename.xml " ); // 加载XML文件 2. 访问节点: varroot = xmlDom.documentElement; // 获取根节点 varnodeList = root.childNodes; // 获取节点的所有子节点 v
1. 加载XML文档:
varxmlDom = new ActiveXObject( " MSXML2.DOMDocument " );
xmlDom.load(
" filename.xml " ); // 加载XML文件

2. 访问节点:

varroot = xmlDom.documentElement; // 获取根节点
varnodeList = root.childNodes; // 获取节点的所有子节点
varnode = nodeList[i];
varname
= node.attributes[ 0 ].value; // 获取节点的第一个属性的值
varxmlElement = node.xml; // 包含起始标签+内容+结束标签
varcontent = xmlElement.childNodes[ 0 ].xml; // 若xmlElement不包括子节点,则可以获得xmlElement标签中的内容;若其包括子节点,则获得第一个子节点标签及其内容;

3. 添加节点:

varnewElement = xmlDom.createElement( " element " );
// 创建attribute属性,并添加到element节点上
varattribute = xmlDom.createAttribute( " attribute " );
attribute.value
= " attrubuteValue " ;
newElement.setAttributeNode(name);

// 创建subElement子节点,并添加到newElement节点上
varsubElement = xmlDom.createElement( " subElement " );
newElement.text
= " SubElementContent " ;
newElement.appendChild(subElement);
// 将newElement添加到根节点下
root.appendChild(newElement);

4. 删除节点:

varnode = root.selectSingleNode( " xpath " );
if (node != null )
root.removeChild(node);

5. 保存节点:

xmlDom.save( " driver:dirfilename.xml " ); // 保存XML文件

6. Xpath几个例子:

authors
authors
/ author
authors
/ author / name
authors
/*/name
authors/author/*//*为通配符
authors/author[nationality]/name//用“[]”来限制只选取拥有nationality子节点的节点
authors/author[nationality='Russian']/name//进一步限制子节点nationality的值为'Russian'
authors/author[@period="classical"]//选取属性period为"classical"的节点
authors/author/@period//选取节点的属性


7. 介绍Xpath的两个网址:
http://www.zvon.org/xxl/XPathTutorial/General_chi/examples.html
http://www.w3school.com.cn/xpath/index.asp

8. 一个解析Xpath的工具:

该工具的下载地址:http://www.axisebusiness.com/nleghari/visualxpath.zip


happyhippy作者: Silent Void
出处: http://happyhippy.cnblogs.com/ 转载须保留此声明,并注明在文章起始位置给出原文链接。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读