2010-02-22 71 views
0

在Internet Explorer(7和8)中使用此ajax请求时,我收到一个parsererror。 我使用jQuery 1.4.1parsererror AJAX XML与jQuery

$.ajax({ 
    url: 'data.xml', 
    dataType: 'xml', 
    contentType: 'text/xml', // also tried application/xml 
    success: doFunction 

});

我在其他地方读过我应该设置的内容类型,但我不知道在哪里。在上面的代码示例中设置的contentType参数不会做任何事情(我可以​​忽略它,不会改变)。

我可以将内容类型设置为<meta>标记吗?我试过了,但是XML不会验证。

对此有何看法?

+1

那么你的XML响应是什么样的?是什么让你认为它不包含某种语法错误?您的服务器在HTTP响应头中返回什么MIME类型? – Pointy 2010-02-22 14:02:35

回答

0

哎哟。 似乎发生了这个问题,因为我在浏览器中通过在Windows资源管理器中双击打开了该文件。

通过网络服务器(localhost)访问它解决了这个问题。

Firefox没有问题,因为它能够打开文件,就好像您自己打开文件一样。 IE真的试图做一个同步请求,但它没有服务器,所以它失败了。

0

首先,我建议你升级1.4.2,不管它是否解决你的问题。其次,我不是你可以规定一个XML文档(url:'data.xml')作为Ajax请求的接收者。如果我错了,请纠正我的错误!

+0

不知道1.4.2已经出来了。 thnx – Jorn 2010-02-22 16:43:41

+0

哦,顺便说一句,你可以使用XML文件作为ajax请求的接收者。您可以对结果使用正常的选择器查询来访问元素。 – Jorn 2010-02-25 10:22:17