WebLoad 解析服务器返回的XML格式内容

Parsing the XML Response

get the root node:  var rootNode = document.wlXmls[0].XMLDocument.documentElement

 

get the root node's name : rootNode.nodeName

 

get the root node's first child:  var fisrtChild = rootNode.childNodes.item(0)
 
Note: the text of a node is also a node. 
 
Case: get the performanceId:0P0000007E of below XML Dom
<ArrayOfPerformanceIdObjectBase>
    <PerformanceIdObjectBase>
        <PerformanceId>0P0000007E</PerformanceId>
    </PerformanceIdObjectBase>
    <PerformanceIdObjectBase>
        <PerformanceId>0P000000Q0</PerformanceId>
    </PerformanceIdObjectBase>
</ArrayOfPerformanceIdObjectBase>
 
function InitAgenda(){
    wlGlobals.ParseXML = true
}
wlHttp.GetXML
= true; var XMLresponse = document.wlXmls[0]; var XMLDoc = XMLresponse.XMLDocument; var element = XMLDoc.documentElement; //InfoMessage("The name of the root node is: " + element.nodeName); var fisrtChildNode = element.childNodes.item(0); // get the first <PerformanceIdObjectBase> node var perfNode = fisrtChildNode.childNodes.item(0); // get the <PerformanceId> node var perfId = perfNode.childNotes.item(0).nodeValue; // get the text node and get its value:0P0000007E

 

===========================================================

<?xml version="1.0"?>
<res>
  <status code="0" status="0">
    <message>a_172.26.41.111:50006_1dbe4f42-acb3-ae47-9008-936faf1b0679</message>
  </status>
</res>

var contents = document.wlSource;

var xmlObject = new XMLParserObject()
var doc = xmlObject.parse(contents)

InfoMessage(doc.getElementsByTagName("res").item(0).getChildNodes()[0].getAttribute("status"))

var status = doc.getElementsByTagName("status").item(0).getAttribute("status")
var code = doc.getElementsByTagName("status").item(0).getAttribute("code")

以上都是取 status 这个属性

 

 

posted @ 2014-12-26 10:46  tomweng  阅读(274)  评论(0编辑  收藏  举报