【问题标题】:Parse GET request string as HTML将 GET 请求字符串解析为 HTML
【发布时间】:2016-08-23 15:14:00
【问题描述】:
我使用 GET 请求通过 Javascript 获取另一个页面上的 HTML,效果很好,但现在我需要获取某个类,我通常可以这样做:
document.getElementsByClassName("class");
但现在我不能这样做,因为它只是普通文本。有什么办法可以解析这个吗?
【问题讨论】:
-
-
欢迎来到 SO。请访问help center 了解如何询问以及询问什么。在这种情况下,请给我们最少的输入和代码,以了解您要做什么
标签:
javascript
parsing
get
【解决方案1】:
将您的 HTML 作为一个名为 htmlString 的字符串,您可以创建一个 DOM 元素,然后对其进行解析。
var htmlElem = document.createElement("html");
htmlElem.innerHTML = htmlString;
// now perform getElementsByClassName() on htmlElem, not document
htmlElem.getElementsByClassName("class");
Demo
使用 jQuery,这更容易。只需使用$.parseHTML():
// $.parseHTML() returns DOM nodes; wrap it in jQuery wrapper to get jQuery object
var htmlElem = $($.parseHTML(htmlString));
// now do what you need
htmlElem.find(".class");
Demo