Javascript操作xml
来源:互联网 发布:大麦盒子 网络未连接 编辑:程序博客网 时间:2024/05/27 20:26
在B/S系统中经常需要在客户端和服务器端之间交互数据,这些数据一般都是在客户端由Javscript组织然后发回服务器。对于一些复杂的数据我们一般用xml的格式组织。本文将给出javascript对xml的一些基本操作。
在javascript中是利用MSXml2组件对xml进行操作。该组件将xml加载到内存中形成一个树状的数据结构,可以利用XPath语言对其进行查询。
首先需要创建一个MSxml2.DOMDocument的对象,如下:
var xmlDoc = new ActiveXObject("MSxml2.DOMDocument");,如果是ie5以上版本可以这样:CreateObject(“Microsoft.XMLDom);
创建了dom对象以后就可以用它加载一个xml文件或一段xml字符串,如下:
var strFilePath = “file.xml”;
xmlDoc.load(strFilePath);//加载xml文件
var strXml = “<?xml,version=1.0?><root><node text=”Name”/></root>”;
xmlDoc.loadXml(strXml);//加载xml字符串
当然还可以创建一个空的DOCDocument,然后向里面填写内容。
首先要创建xml的头(<?xml,version=’1.0’?>),如下:
var = xmlDoc.createProcessingInstruction("xml","version='1.0'");
xmlDoc.appendChild(head);
接下来为xml创建节点,如下:
var rootNode = xmlDoc.createNode("1","Hello","");
//参数1-节点类型;参数2-节点名称;参数3-节点的命名空间
为节点创建属性,
var attribut = xmlDoc.createAttribute("Name");//参数-属性名称
Attribute.value = “programer”;//为属性赋值
rootNode.setAttributeNode(attribut);//将属性附加到节点上
为节点添加文本值,
rootNode.value = “Who am I”;
可以直接创建一个文本节点作为当前节点的子节点
rootNode.appendChild(xmlDoc.createTextNode(“Who am I”));
将节点添加到DOCDocument
xmlDoc.appendChild(rootNode);
当然还可以为一个节点创建子节点,如下
rootNode.appendChild(xnChileNode);
利用XPath查找节点,也可以查找节点集
Var myNode = xmlDoc.selectSingleNode(“//Hello/Node[@Text=’Who’]”);
//查找目标的根节点的节点名为Hello,这条语句查询的是Hello节点下的节点名为Node的节点中Text属性
//等于”Who”的节点
//等于”Who”的节点
Var myNodeList = xmlDoc.selectNodes(“//Hello/Node);
//查询Hello节点下的全部Node节点
删除节点,删除时只能删除某一个节点下的子节点,而不能直接删除孙节点。
Var myNode = xmlDoc.selectSingleNode(“//Hello/Node[@Text=’Who’]”);
Var helloNode = xmlDoc.selectSingleNode(“//Hello”);
xmlDoc.removeChild(myNode);//错误
xmlDoc.removeChild(helloNode);//正确
helloNode.removeChild(myNode);//正确
保存结果。可以将xmlDoc中的内容保存到文件中,也可以直接获取它的xml字符串,如下:
xmlDoc.save(strFilePath);//保存到文件
alert(xmlDoc.xml);//输出xml字符串
- 用javascript操作xml
- 用javascript操作xml
- 用javascript操作xml
- 用javascript操作xml
- 用javascript操作xml
- 用javascript操作xml
- 用javascript操作xml
- 用javascript操作xml
- 用javascript操作xml
- 用javascript操作xml
- Javascript操作xml
- javascript操作xml
- javascript操作xml
- Javascript+XML 操作
- 用javascript操作xml
- 用javascript操作xml
- 用javascript操作xml
- 用javascript操作xml
- 如何关闭 Ubuntu Linux 中的嘟嘟声
- 泛化的ScopeGuard模板类
- 基于灰度颜色个数的视频截图选取
- 丘成桐田刚事件最新动态
- 3D游戏从入门到精通-22
- Javascript操作xml
- Eclipse上如何通过安装插件来进行对C/C++的开发
- 慎用url重写
- 创业之路-我的第一天
- Infostealer.Lemir 病毒的清除
- 电脑中毒了,exe文件打不开了
- Linux下常用软件大比拼
- 小议局部类 (内部类, Inner Class)
- 访问IBM隐藏分区