2014-11-26 4 views
0

SOAP Services를 사용하여 ID를 가져 오는 데 다음 코드를 사용합니다. XML 응답이 잘 작동하고 있습니다.XML에서 노드 값을 가져와야합니다.

function guid(){ 

    var xml = "<?xml version='1.0' encoding='utf-8'?>" + 
     "<soap:Envelope xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">" + 
     GenerateAuthenticationHeader() + 
     "<soap:Body>" + 
     "<RetrieveMultiple xmlns=\"http://schemas.microsoft.com/crm/2007/WebServices\">" + 
     "<query xmlns:q1=\"http://schemas.microsoft.com/crm/2006/Query\" xsi:type=\"q1:QueryExpression\">" + 
     "<q1:EntityName>opportunity</q1:EntityName>" + 
     "<q1:ColumnSet xsi:type='q1:ColumnSet'>" + 
     "<q1:Attributes>" + 
     "<q1:Attribute>opportunityid</q1:Attribute>" + 
     "</q1:Attributes>" + 
     "</q1:ColumnSet>" + 
     "<q1:Distinct>false</q1:Distinct>" + 
     "</query></RetrieveMultiple>" + 
     "</soap:Body></soap:Envelope>"; 

     var xmlHttpRequest = new ActiveXObject("Msxml2.XMLHTTP"); 
     xmlHttpRequest.Open("POST", "/mscrmservices/2007/CrmService.asmx", false); 
     // xmlHttpRequest.setRequestHeader("SOAPAction", "http://schemas.microsoft.com/crm/2007/WebServices/RetrieveMultiple"); 
     xmlHttpRequest.setRequestHeader("Content-Type", "text/xml; charset=utf-8"); 
     xmlHttpRequest.setRequestHeader("Content-Length", xml.length); 
     xmlHttpRequest.send(xml); 

     var result = xmlHttpRequest.responseXML.xml; 
     var doc = new ActiveXObject("MSXML2.DOMDocument"); 
     doc.async = false; 
     doc.load(result); 


    } 

응답은 다음과 같습니다

enter image description here

내가 자바 스크립트를 사용하여 결과 XML에서 얻을해야합니까?

답변

0

로드 이런 식의 XML :

doc.loadXML(xmlHttpRequest.responseXML.text); 
관련 문제