2016-08-23 21 views
2

我用一個GET請求來獲取使用Javascript另一個頁面上的HTML和工作得很好,但現在我需要得到一定的階級,我可以正常地這樣做:解析GET請求字符串作爲HTML

document.getElementsByClassName("class"); 

但現在我不能這樣做,因爲它只是普通文本。有沒有一種方法可以解析這個問題?

+0

的[解析與JS一個HTML字符串]可能的複製(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