zoukankan      html  css  js  c++  java
  • ie无法使用jquery解析xml

    今天做一个区域配送部分,需要调用XML来显示各个地区的配送信息,但是用jquery调用xml时,IE总是提示xml文件加载失败,但是在Firefox中的结果却是成功的。代码如下:
    [javascript]
    $.ajax({
    url:”codArea.xml”,
    type: “GET”,
    dataType: “xml”,
    error: function(xml){
    alert(‘Error loading XML document’+xml);
    },
    success: function(xml){
    $(xml).find(“pName”).each(function(i){
    $(“#province”).append(“<option id=”+i+”>”+$(this).text()+”</option>”);
    });
    }
    });
    [/javascript]
    标准的jquery调用xml的方式,问题出在哪里呢百思不得其解,最后上网找到答案了,因为IE出于安全考虑,不允许浏览器去直接请求本地磁盘的文件。如果把文件上传到服务器就可以正常访问了,但是如果想在本地看效果,可修改适当的修改一下代码,如下:
    [javascript]
    $.ajax({
    url:”codArea.xml”,
    type: “GET”,
    dataType: ($.browser.msie) ? “text” : “xml”,
    error: function(xml){
    alert(‘Error loading XML document’+xml);
    },
    success: function(data){
    var xml;
    if (typeof data == “string”) {
    xml = new ActiveXObject(“Microsoft.XMLDOM”);
    xml.async = false;
    xml.loadXML(data);
    } else {
    xml = data;
    };
    $(xml).find(“pName”).each(function(i){
    $(“#province”).append(“<option id=”+i+”>”+$(this).text()+”</option>”);
    });
    }
    });
    [/javascript]
  • 相关阅读:
    python-常用数据类型
    python入门篇
    Vue 架构
    Bootstrap Web框架
    策略模式
    Java线程安全总结
    JVM中线程状态转换图
    java 多线程并发系列之 生产者消费者模式的两种实现
    JVM 垃圾回收器详解
    MyISAM和InnoDB索引实现对比
  • 原文地址:https://www.cnblogs.com/shihao/p/2182844.html
Copyright © 2011-2022 走看看