js xmlDom

1. 加载XML文档:

var xmlDom = new ActiveXObject("MSXML2.DOMDocument");
xmlDom.load("filename.xml"); //加载XML文件

2. 访问节点:

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

3. 添加节点:

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

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

4. 删除节点:

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

5. 保存节点:

xmlDom.save("driver:\\dir\filename.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         //选取节点的属性

你可能感兴趣的:(XMLDOM)