Convert xml to string with jQuery Convert xml to string with jQuery xml xml

Convert xml to string with jQuery


Here it is:

<script type='text/javascript'>function xmlToString(xmlData) {     var xmlString;    //IE    if (window.ActiveXObject){        xmlString = xmlData.xml;    }    // code for Mozilla, Firefox, Opera, etc.    else{        xmlString = (new XMLSerializer()).serializeToString(xmlData);    }    return xmlString;}   </script>

Taken from here


this works around the .innerHtml problem.

$('<div>').append(xmlObj).html()


This worked for me (credit: http://www.ibm.com/developerworks/xml/tutorials/x-processxmljquerytut/section3.html):

 function getXmlAsString(xmlDom){      return (typeof XMLSerializer!=="undefined") ?            (new window.XMLSerializer()).serializeToString(xmlDom) :            xmlDom.xml; }          

Here's an example that retrieves information about a column from a SharePoint list:

var soapEnv =    "<soapenv:Envelope xmlns:soapenv='http://schemas.xmlsoap.org/soap/envelope/'> \        <soapenv:Body> \             <GetList xmlns='http://schemas.microsoft.com/sharepoint/soap/'> \                <rowLimit>0</rowLimit> \                <listName>Announcements</listName> \            </GetList> \        </soapenv:Body> \    </soapenv:Envelope>";jQuery.support.cors = true; $.ajax({    url: "http://sharepoint/_vti_bin/lists.asmx",    type: "POST",    dataType: "xml",    data: soapEnv,    contentType: "text/xml; charset=\"utf-8\"",    complete: function(xData){        var xmlDoc = $.parseXML(xData.responseText), $xml = $(xmlDoc)                   $Fields = $xml.find("Field");        $field = $Fields.filter("Field[Name='Title']")[0];        //Show the xml        alert(getXmlAsString( xmlDoc ));        alert(getXmlAsString( $field ));    }});