当我提醒它返回这样的字符串时:
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>"
更新:
我尝试使用此方法 getJSON 并且确实收到警报,但从未在 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()
});
});
如何在jquery中读取xml文件,下面是将我作为字符串返回的内容,当我执行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>
最佳答案
如果您仍在寻找答案,Google 的 ajax API 有一个内置的 xml->json 转换器。
您可以通过http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&q=
调用它
末尾带有您的请求网址。
如果您尝试使用 JSONP 并解决同源问题,它看起来像这样:
var googleAPI = "http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&q=";
$.getJSON(googleAPI + url + "&callback=?", null, 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()
});
});
但是,这将为您提供 JSON 数据,因此您需要修改回调以将其序列化并访问名称、描述、总计元素作为属性。如果您需要这方面的指导,请查看 Serializing to JSON in jQuery
关于jquery - 返回 xml 字符串 - 如何使用 JQuery/Json 解析 xml 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4319181/