我使用GET请求使用Javascript在另一个页面上获取HTML,效果很好,但现在我需要获取一个通常可以这样做的类:

document.getElementsByClassName("class");




但是现在我不能做,因为它只是普通文字。有办法解析吗?

最佳答案

使用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

08-17 06:01