2016-08-23 2 views
2

я использовал запрос GET, чтобы получить HTML на другой странице с Javascript и работало отлично, но теперь мне нужно, чтобы получить определенный класс, который я мог нормально сделать так:Анализировать GET запрос строки как HTML

document.getElementsByClassName("class"); 

, но теперь я не могу этого сделать, потому что это обычный текст. Есть ли способ разобрать это?

+0

Возможный дубликат [Разбор HTML строку с JS] (http://stackoverflow.com/questions/10585029/parse-a-html-string-with-js) –

+0

Добро пожаловать в SO. Пожалуйста, посетите [помощь], чтобы узнать, как и что спросить. В этом случае дайте нам минимальный объем ввода и код, чтобы понять, что вы пытаетесь сделать – mplungjan

ответ

2

С вашим 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

Смежные вопросы