responseXML与responseText的区别?
responseXML返回的是xml dom对象,通过该对象可以访问xml文件的节点、属性节点、值节点。
而responseText返回的是文本字符串,可以直接打印输出。
responseXML在各大浏览器中的使用:
IE和Opera支持responseXML,而firefox不支持。要想在firefox中返回xml dom对象,可以先返回
responseText,再通过firefox的DOM解析器解析为xml dom对象。具体方法如下:
var parser=new DOMParser();
var xmldom=parser.parseFromString(xmlhttp.responseText,"text/xml");
其中xmlhttp为xmlhttprequest对象。
还有本人在各大最新版本的浏览器中做过实验,包括IE、opera 、firefox。对nodeValue值节点
的访问有些问题,比如在IE和opera中,获取值节点要使用text属性。例如:
xmldom.documentElement.childNodes[0].text;
如果使用nodeValue会返回为null,同样firefox使用nodeValue返回也为null,firefox要访问值
节点要使用textcontent属性。例如:
xmldom.documentElement.childNodes[0].textcontent;
好了,希望这几点能对大家有所帮助,同时希望大家多多指正!