我想解析这个 XML 文档http://www.google.de/ig/api?weather=Braunschweig,%20Deutschland我希望能够读出条件、temp_c 和湿度。所有这一切我想在 JavaScript 内部完成,而不使用任何服务器端脚本,例如 PHP,我希望它可以在现代浏览器和 IE7 上运行,如果没有很多问题 IE6 编辑:没有框架的解决方案将是理想的
6 回答
除非您在 google.de 上托管的页面上工作,否则您不能。
同源策略可防止在您站点的网页中运行的 JS 访问远程站点上的文档。
您必须涉及服务器端进程,以便将 XML 转换为可以远程处理的格式(例如 JSON-P,Yahoo! Pipes将为您完成)或通过您自己的服务器与服务器中继数据在与页面相同的来源中可访问的侧进程。
Ajaxian 有一个很好的教程,介绍如何使用 jQuery http://ajaxian.com/archives/ajaxian-featured-tutorial-parsing-xml-with-jquery解析 XML 希望对您有所帮助
编辑:教程实际上在这里:http ://blog.reindel.com/2007/09/24/jquery-and-xml-revisited/
我在 javascript 中使用以下代码解析 XML 时遇到了一些运气:
var xmlDoc = this.req.responseXML.documentElement;
var tStatus = xmlDoc.getElementsByTagName("status")[0].firstChild.data;
var tOtherURL = xmlDoc.getElementsByTagName("otherurl")[0].firstChild.data;
var tRows = xmlDoc.getElementsByTagName("rows")[0].firstChild.data;
请记住,我并不真正了解 Javascript,并且我从其他地方对此进行了货物崇拜。
我创建了一个非常容易解析 XML 的 jQuery 插件。它适用于所有雅虎 A 级浏览器,并带有过滤、限制和回调选项。
这可能是一个需要考虑的解决方案:http: //jparse.kylerush.net/
我想我找到了一个教程(虽然它是德语)http://www.aboutwebdesign.de/awd/content/1124893836.shtml