Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/465.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jQuery以最大浏览器兼容性打开XML_Javascript_Jquery_Xml_Internet Explorer 8_Xmlhttprequest - Fatal编程技术网

Javascript 使用jQuery以最大浏览器兼容性打开XML

Javascript 使用jQuery以最大浏览器兼容性打开XML,javascript,jquery,xml,internet-explorer-8,xmlhttprequest,Javascript,Jquery,Xml,Internet Explorer 8,Xmlhttprequest,我们有一个使用此代码的网页: var xhr = new window.XMLHttpRequest(); // XHR for Chrome/Firefox/Opera/Safari. // Create the XHR object. xhr.open("GET","prp.xml", false); xhr.send(); xmlDoc=xhr.responseXML; 它打开一个XMLHttpRequest来获取XML文件,然后将结果放入xmlDoc变量。我想知道是否可以使用jq

我们有一个使用此代码的网页:

var xhr = new window.XMLHttpRequest();
// XHR for Chrome/Firefox/Opera/Safari.
// Create the XHR object.   
xhr.open("GET","prp.xml", false);
xhr.send();
xmlDoc=xhr.responseXML;
它打开一个XMLHttpRequest来获取XML文件,然后将结果放入xmlDoc变量。我想知道是否可以使用jqueryv1.11.0执行相同的操作,并且xmlDoc变量仍然可以被代码的其余部分使用(aka仍然与常规JS兼容)

根据用户的不同,人们会使用Firefox、Chrome、InternetExplorer8、9或10。我读到10岁以下的internet explorer不能使用XMLHttpRequest,我对整个jQuery都很不了解


谢谢

我不确定常规JS如何处理XML,但通过jQuery调用Ajax非常简单:

var xhr_variable;
$.ajax({
url: "your.xml",
    success: function(data) {
      console.log("working");
      xhr_variable = data;
    }, error: function(err) {
      console.log("not working");
}
});
如果您是Ajax新手,我建议您使用error检查它是否有效。如果工作正常,可以使用以下方法:

var xhr_variable;
$.ajax({
    url: "miep.xml",
    success: function(data) {
        xhr_variable = data;
    }
});
XML文件将分配给变量(如果在正确的范围内使用)


请注意,出于安全原因,只有在调用托管在同一域上的文档时,Ajax才会起作用。(example.com可以从example.com获取文档,但不能从example2.com获取文档)。

嘿,伙计,谢谢!非常感谢。我有个问题要问你:那代码是用来提取一些文件的。使用ajax将一些字符串值放入文件中如何?我知道这不是问题的一部分,但我知道本地javascript ajax请求可能会使用“POST”命令在远程服务器上编写(我想,从来没有使用过它),我们可以使用jQuery也这样做吗?这样它就可以与每个浏览器一起工作?再次感谢,真的很感谢。当然,你可以用它来处理各种信息:xml、html、脚本、json、文本。。。如果您只想加载一个字符串,则需要添加数据类型,因为jQuery在默认情况下只能检测xml、json、脚本或html。只需在url行之后添加
数据类型:“text”
,您就可以了。jQuery最棒的一点是所有版本1.x都可以回到IE6。(2.x系列适用于IE 8+)