when i do alert it returning string like this:
data "<?xml version="1.0" encoding="utf-8" ?>
<xml xmlns="http://www.opengis.net/kml/2.2">
<Document>
<Name>John Smith</Name>
<Description>stackoverflow</Description>
<Total>50</Total>
</Document>
</xml>"
Update:
i tried using this method getJSON and i do get alerts but never execute inside the find('Document').each.....
$.getJSON(_url, function (data) {
alert(data);
$(data).find('Document').each(function () {
debugger
var name = $(this).find('Name');
var desc = $(this).find('Description').text();
var total = $(this).find('Total').text()
});
});
how to read xml file in jquery, below is what is returning me as a string and i can see that when i do alert(data);
$.getJSON(url, {},
function (data) {
alert(data);
}
});
<?xml version="1.0" encoding="utf-8" ?>
- <xml xmlns="http://www.opengis.net/kml/2.2">
- <Document>
<Name>John Smith</Name>
<Description>stackoverflow</Description>
<Total>50</Total>
</Document>
</xml>
You appear to have misunderstood what JSON is, and how it is used in jQuery!?
If you want to do cross-domain, the returned data must be in JSON format. jQuery will attempt to parse your JSON as soon as it receives it. It expects it in a format like “jsonp1291171891383({})” which is then evaluated as JavaScript. The XML you have returned in not JavaScript.
One possible way to work around this is your return data is something like “jsonp1({“data”:”<xml>”})”. If that is the case, then in your example the variable “data” is plain text, and you will need to parse the XML before you can access it via selector methods.
From here.
And then in your code: