0

I have this xml file:

    Response: <ns3:ExecuteResponse xmlns:ns3="http://www.opengis.net/wps/1.0.0" xmlns:ns1="net/ows/1.1" xmlns:ns2="http://www.w3.org/1999/xlink" statusLocation="xxxxf62" serviceInstance="http:/http-post" version="1.0.0" service="xxx">
<ns3:Process ns3:processVersion="0.2">
<ns1:Identifier>OM_B</ns1:Identifier>
<ns1:Title xml:lang="en-US">Bioclim</ns1:Title>
<ns1:Abstract xml:lang="en-US">yyyyyyyyyyyyyyyy</ns1:Abstract>
</ns3:Process>
<ns3:Status creationTime="2010-07-06T17:38:13.355+02:00">
<ns3:ProcessAccepted>ProcessConfiguration has been accepted.</ns3:ProcessAccepted>
</ns3:Status>
<ns3:ProcessOutputs />
</ns3:ExecuteResponse>

How I can extract statusLocation attribute in ExecuteResponse node?

Cœur
  • 37,241
  • 25
  • 195
  • 267
michele
  • 26,348
  • 30
  • 111
  • 168
  • i don't see any statusLocation in your sample – Andrey Jul 06 '10 at 15:42
  • It's on the first line. Scroll right a bit. – Tim Down Jul 06 '10 at 15:50
  • You don't need jQuery to parse xml. See http://stackoverflow.com/questions/3054411/how-do-i-parse-xml-with-jquery, http://stackoverflow.com/questions/2124924/can-xml-be-parsed-reliably-using-jquerys-responsexml-syntax and http://stackoverflow.com/questions/2908899/jquery-wont-parse-xml-with-nodes-called-option – Crescent Fresh Jul 06 '10 at 15:52

2 Answers2

1

Have you received this XML file via an XMLHttpRequest? If so, you can use its responseXML property.

alert(xhr.responseXML.documentElement.getAttribute("statusLocation"));

Or with jQuery:

$.ajax({
    type: "GET",
    url: "yourfile.xml",
    dataType: "xml",
    success: function(xml) {
        alert(xml.documentElement.getAttribute("statusLocation"));
    }
});
Tim Down
  • 318,141
  • 75
  • 454
  • 536
0

Here is one way to do it:

var xml = null;
function loadXML(myURL){
    $.ajax({
        type: "GET",
        url: myURL,
        dataType: ($.browser.msie) ? "text" : "xml",
        error: function(){
            return;
        },
        success: function(data){
             if (typeof data == "string") {
               xml = new ActiveXObject("Microsoft.XMLDOM");
               xml.async = false;
               xml.loadXML(data);
                } else {
               xml = data;
             }
        }
    });
};
$(loadXML("common/glossary.xml"));

then

$(xml).find('something')
mkoryak
  • 57,086
  • 61
  • 201
  • 257