jQuery XML Parse(使用Ajax)在Chrome中不起作用(但适用于IE,FF,Opera,Safari)

时间:2010-09-13 14:19:50

标签: jquery xml google-chrome

我正在使用jQuery.ajax从文件中解析一些xml。在IE(6,7,8),Firefox,Opera和Safari中一切正常,但谷歌Chrome无法正常运行。这是代码:

/* ... */
this.loadXml = function()
{
 $.ajax(
 {
  type: "GET",
  url: "some_file.xml",
  dataType: ($.browser.msie) ? "text" : "xml",
  success: function(xml)
  {
   if($.browser.msie)
   {
    var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
    xmlDoc.loadXML(xml);
    xml = xmlDoc;
   }

  /* parsing starts here */
  /* for example: in the document I have a div tag with id "some text" and the xml file contains: <root><tag>test</tag></root>*/

  $("#some_id").text($(xml).find("root > tag").text());

  /* parsing ends here */

  }
 });
}

2 个答案:

答案 0 :(得分:2)

Chrome不允许您访问此类本地文件。这是一个(有点争议)安全的事情。您可以使用标志从命令行启动chrome,以强制它允许访问:

google-chrome --allow-file-access-from-files

(我再次感谢@Nick Craver,无限知识的人。)

编辑 - 这是我问的问题:Accessing relative URL's via "ajax" from "file://" content

答案 1 :(得分:-1)

只需用完整的网址替换短网址即可...

来自

url:“some_file.xml”,

url:“http://www.domain.com/some_file.xml”,