Xml Dom常用方法举例

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<HTML>

 <HEAD>

  <TITLE> New Document </TITLE>

  <META NAME="Generator" CONTENT="EditPlus">

  <META NAME="Author" CONTENT="">

  <META NAME="Keywords" CONTENT="">

  <META NAME="Description" CONTENT="">

 </HEAD>



 <BODY>

  <SCRIPT LANGUAGE="JavaScript">

  var xmlDoc;

  createXML();

  //创建xml

  function createXML(){

		xmlDoc = new ActiveXObject("Microsoft.XMLDOM");

		var xmlString = "<GREETING><value><MESSAGE>Hello!</MESSAGE><MESSAGE>heihei</MESSAGE><MESSAGE>haha</MESSAGE></value></GREETING>";

		var boolValue = xmlDoc.loadXML(xmlString);

		//alert(boolValue);

	}



	//传回指定名称的元素集合,使用*表示返回所有元素

	function getElementByTag(){

		var objNodeList = xmlDoc.getElementsByTagName("MESSAGE");

		for(var i=0;i<objNodeList.length;i++){

		  alert(objNodeList.item(i).xml);

		}

	}



	function getSelectNode(){

	 //传回所有符合提供样式(pattern)的节点

       var objNodeList=xmlDoc.selectNodes("//MESSAGE");//区分大小写

	   for(var i=0;i<objNodeList.length;i++){

		  alert(objNodeList.item(i).xml);

		}

	}



    //传回第一个符合样式的节点

	function getSingleNode(){

	  var node = xmlDoc.documentElement.selectSingleNode("//value//MESSAGE");

	  alert(node.xml);

	  document.write(node.xml);

	}



    //传回指定节点相关的文字

    function getNodeValue(){

	  var varNodeValue = xmlDoc.documentElement.nodeValue;

	  alert(varNodeValue);

	}



    //传回目前节点的属性列表

	function getAttribute1(){

	  var objAttList = xmlDoc.documentElement.attributes;

	  alert(objAttList);

	}



	//得到指定节点的文本

	function getNodeText(){

	  var objNodeList = xmlDoc.getElementsByTagName("MESSAGE");

		for(var i=0;i<objNodeList.length;i++){

		  var node = objNodeList[i].childNodes[0];

		  alert(node.nodeValue);

		}

	}



   //某个节点下的所有值

   function getText(){

	  var objNodeList = xmlDoc.getElementsByTagName("value");

		for(var i=0;i<objNodeList.length;i++){

		var n = objNodeList[i].getElementsByTagName("MESSAGE");

		  for(var j=0;j<objNodeList[i].childNodes.length;j++){

		  var node = objNodeList[i].childNodes[j];

		  alert(node.nodeValue);

		  }

		}

	}



      //得到节点的文本

	function getNode(){



			var xml = "<resources><resource><ruuid>b173c3-11ac3caec8d-8f</ruuid><name>hello</name><version>2.0 </version><verder>icss</verder></resource><resource><ruuid>b173c3-11ac3caec8d-8f 70af46655f820aca8dca669d53e8f7</ruuid><name>xml</name><version>1.0</version><verder>icss</verder></resource></resources>";





        var doc = new ActiveXObject("Microsoft.XMLDOM");

		var boolValue = doc.loadXML(xml);



	    var root = doc.documentElement.selectSingleNode("//resources");

		var objNodeList = root.childNodes;

		for(var i=0;i<objNodeList.length;i++){

				  var ruuid = objNodeList[i].childNodes[0].text;

				  var name = objNodeList[i].childNodes[1];

				  var version = objNodeList[i].childNodes[2];

				  var verder = objNodeList[i].childNodes[3];

				  alert(ruuid);

		}

	}

  </SCRIPT>

  <INPUT TYPE="button" VALUE="创建XML" ONCLICK="createXML()"><BR>

  <INPUT TYPE="button" VALUE="传回指定名称的元素集合" ONCLICK="getElementByTag()"><BR>

  <INPUT TYPE="button" VALUE="传回所有符合提供样式的节点" ONCLICK="getSelectNode()"><BR>

  <INPUT TYPE="button" VALUE="传回第一个符合样式的节点" ONCLICK="getSingleNode()"><BR>

  <INPUT TYPE="button" VALUE="传回指定节点相关的文字" ONCLICK="getNodeValue()"><BR>

  <INPUT TYPE="button" VALUE="传回目前节点的属性列表" ONCLICK="getAttribute1()"><BR>

  <INPUT TYPE="button" VALUE="得到指定节点的文本" ONCLICK="getText()">

  <INPUT TYPE="button" VALUE="得到指定节点的节点文本" ONCLICK="getNode()">



 </BODY>

</HTML>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值