JavaScript/处理 HTML
外观
从 AJAX 返回的 HTML 处理起来令人惊讶地困难。因为XMLHttpRequest被设计用来处理格式良好的 XML,尝试使用 responseXML 属性解析 HTML 页面几乎总是会导致 XML 解析错误。responseText 属性当然包含 HTML 源代码,并且可以使用常规字符串函数或正则表达式尝试解析它。但是,XMLHttpRequest对象没有提供一种简单的使用 DOM 操作来解析返回的 HTML 的方法。
从 AJAX 返回的 HTML 解析的一种方法是将整个页面作为浏览器中当前文档的子元素添加。只需创建一个新节点并将返回的 HTML 文本放在新节点的 innerHTML 属性中,如下所示
var htmlDoc = document.createElement('div'); // Creates a new, empty DIV node.
htmlDoc.innerHTML = ajaxResult.responseText; // Places the returned HTML page inside the new node.
HTML 文档将自动解析,然后可以使用 DOM 操作对其进行搜索、导航和操作。