【发布时间】:2011-08-31 08:04:27
【问题描述】:
我需要使用 JQuery 访问 XML 文件。我尝试了这两种方法,但我似乎无法在一个浏览器上包含它们。
这里:
在 Chrome 中,这是可行的:
var xml = "<music><album>Beethoven</album></music>";
var result = $(xml).find("album").text();
alert(result);
现在我尝试将它与这段代码 sn-p 结合使用,它在 IE 中运行良好:
jQuery.get('fruits.xml', function(data) {
alert(data);
});
问题是,如果我将这两个代码放在一起,其中一个不能在另一个上工作。因此,在 Chrome 中,我可以访问“Beethoven”,但无法访问“fruits.xml”,但会出现此错误:
XMLHttpRequest cannot load file:///C:/Python32/fruits.xml. Origin null is not allowed by Access-Control-Allow-Origin.
另一方面,在 IE 中,我可以访问 fruits.xml 的全部内容并将其保存到一个变量中,但是我需要访问在 Chrome 中工作的 XML 属性的代码在 IE 中不起作用。
如您所见,我想使用代码的第二个 sn-p 获取 xml 的内容,而我将使用代码的第一个 sn-p 访问 xml 的内容。还有另一种使用 Javascript 访问 XML 的方法吗?你能帮我解决我的代码有什么问题吗?
帮助?
【问题讨论】:
-
第一个例子是个坏主意:主 jQuery 函数将文本解析为 HTML,而不是 XML。您应该改用 jQuery 的
parseXML()函数:var result = $($.parseXML(xml)).find("album").text();。
标签: javascript jquery xml