在XMLHttpRequest中,可以使用responseXML和responseText兩種方式式接收響應數據。
使用responseXML方式,可以接收后台返回的XML格式的字符串,瀏覽器自動將其解析為xml文檔對象,因此我們可以直接該返回數據使用DOM方法,如:
XML:
<person>
<id>1</id>
</person>
JS:
var xmldom = xhr.responseXML;
var persons = xmldom.getElemenstByTagName('person');
使用responseText方式,接收的便是純文本字符串,如:“<person><id>1</id></person>";
JQuery中的ajax模塊,可以通過設置dataType來對返回數據進行處理:
dataType:xmll時,jquery返回xml對象(這是因為內部使用了responseXML);
dataType:html時,jquery返回純文本html,在返回的html文本中,如包含script時,在將html插入dom樹時,script內腳本會執行(這是html和text的差別所在);
dataType:json,jquery返回json對象;