js 解析xml

当从Action中返回到页面上的是xml文件时,需要我们对xml文件进行操作:

假如xml是:
<root>
  <cunFleet>
    <cunFleetID>2</cunFleetID>
    <cunfleetName>elite002</cunfleetName>
  </cunFleet>
</root>

页面中获得此xml后的操作:
function toXML(strxml){ 
	try{ 
		xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); 
		xmlDoc.loadXML(strxml); 
	} catch(e){ 
//如果不是IE的话使用这种方式获得
		var oParser=new DOMParser(); 
		xmlDoc=oParser.parseFromString(strxml,"text/xml"); 
	} 
	return xmlDoc; 
} 
function displaySelect(ajax){
	
	var xmlobj = toXML(ajax);
	var cunfName = xmlobj.getElementsByTagName('cunFleet/cunfleetName')[0].childNodes(0).nodeValue;
	//通过xml中接点关系来找需要的值
var cunFid = xmlobj.getElementsByTagName('cunFleet/cunFleetID')[0].childNodes(0).nodeValue;
	var truckListSelect = document.getElementById('currentTruckList');
	var usedTrListSelect = document.getElementById('availableTruckList');
	var ftruckLength = xmlobj.getElementsByTagName('fleetTruck').length;
	var usedTruckLength = xmlobj.getElementsByTagName('usedTruck').length;
	
if(usedTruckLength > 0){
 for(var n=0; n<usedTruckLength; n++ ){
		
			var usedTid = xmlobj.getElementsByTagName('usedTruck/tId')[n].childNodes(0).nodeValue;
			var usedThk = xmlobj.getElementsByTagName('usedTruck/tHK')[n].childNodes(0).nodeValue;
			var usedTtype = xmlobj.getElementsByTagName('usedTruck/tType')[n].childNodes(0).nodeValue;
			var tfname = xmlobj.getElementsByTagName('usedTruck/tFname')[n].childNodes(0).nodeValue;
			
usedTrListSelect.options.add(new Option(usedThk+"("+usedTtype+")", usedTid));		}
	}
	
	
}

你可能感兴趣的:(xml,Ajax,IE,Microsoft)