作家
登录

javascript Xml增删改查(IE下)操作实现代码

作者: 来源:www.28hudong.com 2013-03-30 02:45:29 阅读 我要评论

html文件: 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>js操作Xml增删改查(IE下)</title> <script type="text/javascript"><!-- /*等解决的问题: 1.xpath到底是定位到哪一层,怎样定位到比如root这一级还是person或name这一级. */ var xmlDoc; var rootNode; //根结点 //装载Xml文档 function loadXml(){ try{ xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); xmlDoc.async=false;//关闭异步加载 xmlDoc.load("XmlFile.xml");//load是从文件,loadXML是从字符串. rootNode = xmlDoc.documentElement; }catch(e) {alert(e.message)} } //显示内存中的Xml文档 function outXml(){ var divXml=document.getElementById("divXml"); divXml.innerHTML=xmlDoc.xml;//显示xml内容,技巧是加个xml后缀.? alert(xmlDoc.xml); } //增 function addXml(){ //叶子结点,设置text值 var newName = xmlDoc.createElement("name"); newName.text = "crane"; var newGender = xmlDoc.createElement("gender"); newGender.text = "female"; //父级结点,用appendChild(childNode); var newPerson = xmlDoc.createElement("person"); //设置属性id newPerson.setAttribute("id","2"); newPerson.appendChild(newName); newPerson.appendChild(newGender); //增加到根结点 rootNode.appendChild(newPerson); alert(xmlDoc.xml); } //删 function deleteXml(){ //先找到结点 var singleNode = xmlDoc.selectSingleNode("/root/person[name='tree']"); //找到父级再删除 singleNode.parentNode.removeChild(singleNode); alert(xmlDoc.xml); } //改 function updateXml(){ var singleNode = xmlDoc.selectSingleNode("/root/person[name='crane']"); singleNode.childNodes[0].text = "updated"; alert(xmlDoc.xml); } //查 function queryXml(){ //alert(rootNode.nodeName);//节点名 //alert(rootNode.text);//节点里的全部内容 //xPath选择节点数组 //var nodes = xmlDoc.selectNodes("/root/person"); //alert(nodes[0].text); //选择单个节点 /*总结 1."/root/person[name='tree']"等同于"/root[person/name='tree']"即找出来的是person结点 */ var singleNode = xmlDoc.selectSingleNode("/root/person[gender='female']");//这里的值需要加引号 alert(singleNode.text); alert(singleNode.getAttribute("id")); //测试xpath定位 var sglNode = xmlDoc.selectSingleNode("/root[person/gender='male']");//这里定位不明确.再研究. alert(sglNode.text); //显示全部xml文档 //alert(xmlDoc.xml); } // --></script> </head> <body> <div id="divXml"></div> <input type="button" value="load" onclick="loadXml();" /> <input type="button" value="show" onclick="outXml();" /> <input type="button" value="add" onclick="addXml();" /> <input type="button" value="delete" onclick="deleteXml();" /> <input type="button" value="update" onclick="updateXml();" /> <input type="button" value="query" onclick="queryXml();" /> </body> </html> Xml文件: 复制代码 代码如下: <?xml version="1.0" encoding="utf-8" ?> <root> <person id="1"> <name>tree</name> <gender>male</gender> </person> </root>

  推荐阅读

  Js 订制自己的AlertBox(信息提示框)

本文制作一个用户自定义的AlertBox,效果如图:js文件中插入如下代码:复制代码 代码如下:// JScript 文件 // constants to define the title of the alert and button text. var ALERT_TITLE = "Oops!"; var ALERT_>>>详细阅读


本文标题:javascript Xml增删改查(IE下)操作实现代码

地址:http://www.17bianji.com/kaifa2/JS/29021.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)