js操作xml
来源:互联网 发布:淘宝店入驻折800 编辑:程序博客网 时间:2024/06/05 06:16
经过js解析之后的xml操作与dom操作雷同
完整示例:
<script type="text/javascript">function parseXML() {text="<userInfo><userName>xxx</userName></userInfo>"; try{ //Internet Explorer xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); xmlDoc.async="false"; xmlDoc.loadXML(text); } catch(e) { try{ //Firefox, Mozilla, Opera, etc. parser=new DOMParser(); xmlDoc=parser.parseFromString(text,"text/xml"); } catch(e) { alert(e.message); return; } } alert(xmlDoc.getElementsByTagName("userName")[0].childNodes[0].nodeValue);}parseXML();</script>
精简:
改变文本节点得值
xmlDoc = loadXMLDoc("books.xml");x = xmlDoc .getElementsByTagName("title")[0].childNodes[0];x.nodeValue="Easy Cooking";
改变属性的值
xmlDoc = loadXMLDoc("books.xml");x = xmlDoc .getElementsByTagName("book");x[0].setAttribute("category","food");
删除元素节点
xmlDoc = loadXMLDoc("books.xml");y = xmlDoc.getElementsByTagName("books")[0];xmlDoc.documentElement.removeChild(y);
xmlDoc = loadXMLDoc("books.xml");x = xmlDoc.getElementsByTagName("book")[0];x.parentNode.removeChild(x);
删除文本节点
xmlDoc = loadXMLDoc("books.xml");x = xmlDoc.getElementsByTagName("title")[0];y = x.childNodes[0];x.removeChild(y);
清空文本节点
xmlDoc = loadXMLDoc("books.xml");x = xmlDoc.getElementsByTagName("title")[0];x.nodeValue = "";
根据名称删除属性节点
xmlDoc = loadXMLDoc("books.xml");x = xmlDoc.getElementsByTagName("book");x[0].removeAttribute(category);
根据对象删除属性节点
xmlDoc = loadXMLDoc("books.xml");x = xmlDoc.getElementsByTagName("book");for(var i=0;i<x.length;i++){ while(x[i].attributes.length>0){ attnode=x[i].attributes[0]; old_att=x[i].removeAttribtueNode(attnode); }}x[0].removeAttribute(category);
替换元素节点
replaceChild() 方法用于替换节点。xmlDoc = loadXMLDoc("books.xml");x = xmlDoc.documentElement;//create a book element, title element and a text nodenewNode = xmlDoc.createElement("book");newTitle = xmlDoc.createElement("title");newText = xmlDoc.createTextNode("A Notebook");//add the text node to the title node,newTitle.appendChild(newText);//add the title node to the book nodenewNode.appendChild(newTitle);y = xmlDoc.getElementsByTagName("book")[0];//replace the first book node with the new nodex.replaceChild(newNode,y);
replaceData()方法用于替换文本节点中的数据。replaceData()方法有三个参数:offset-在何处开始替换字符。Offset值以0开始。length-要替换多少字符。string-要插入的字符串。xmlDoc = loadXMLDoc("books.xml");x = xmlDoc.getElementsByTagName("title")[0].childNodes[0];x.replaceDate(0,8,"Easy");用nodeValue属性来替换文本节点中的数据。xmlDoc = loadXMLDoc("books.xml");x = xmlDoc.getElementsByTagName("title")[0].childNodes[0];x.nodeValue="Easy Italian";
创建新的元素节点
createElement()方法创建新的元素节点。xmlDoc = loadXMLDoc("books.xml");newNode = xmlDoc.createElement("edition");x = xmlDoc.getElementsByTagName("book")[0];x.appendChild(newNode);
创建新的属性节点
xmlDoc = loadXMLDoc("books.xml");newAtt = xmlDoc.createAttribute("edition");newAtt.nodeValue ="first";x = xmlDoc.getElementsByTagName("title");x[0].setAttributeNode(newAtt);通过setAttribute创建属性。xmlDoc = loadXMLDoc("books.xml");x = xmlDoc.getElementsByTagName("book");x[0].setAttribute("edition","first");
创建文本节点
createTextNode()方法创建新的文本节点。xmlDoc = loadXMLDoc("books.xml");newNode = xmlDoc.createElement("publisher");newText = xmlDoc.createTextNode("english");newNode.appendChild(newText);x = xmlDoc.getElementsByTagName("book")[0];x.appendChild(newNode);
0 0
- js操作xml
- JS操作XML
- js操作XML
- JS操作Xml
- js操作xml
- js操作XML
- JS操作XML
- JS操作XML 类
- JS操作Xml文件
- js操作xml(2)
- js操作xml
- 学习 js操作 xml
- JS操作XML
- js操作XML
- JS 操作XML
- JS操作XML
- js操作xml参考手册
- Js操作xml文件
- linux下vi高亮且显示行数
- 请教:日期选择框,selenium如何定位页面元素
- Opencv makefile
- 图片预加载
- js中几种实用的跨域方法原理详解
- js操作xml
- Spring框架
- php开发环境搭建 Apache+PHP+MySQL
- Spark企业级开发最佳实践
- linux strip
- Meanshift算法浅酌
- HTML - 鼠标光标属性
- 在Android中访问内置SE和基于SE的卡模拟(一)
- build target,minSdkVersion,targetSdkVersion,maxSdkVersion区别