2011-05-06 78 views
2

我正在嘗試從xhr請求中讀取響應。我不想嘗試使用正則表達式來解析信息。有沒有辦法將響應字符串轉換爲html元素,以便我可以使用document.getElementsById()來讀取我想要的信息?該解決方案不能使用jQuery。將字符串轉換爲html元素以運行javascript

編輯:格式是來自xhr響應的普通html。我正在嘗試從divs中獲取信息。

<div class="name">John Doe</div> 
+0

什麼是響應格式? – 2011-05-06 03:23:18

+0

響應是在正常的HTML。我試圖從這樣的div中獲取信息

John Doe
2011-05-06 03:27:02

+0

這不是很清楚你的迴應是什麼,但它聽起來像你想用它填充一些元素的innerHTML – entonio 2011-05-06 03:26:16

回答

2

當然沒問題,如果您的回覆是HTML,只需創建一個DIV並將您的響應鏟入它。不知道你提到的getElementsByName,雖然這不是一個標準的DOM函數,據我所知。

var xhrResponse = "<span id='status'>SUCCESS</span>"; 

var clipboard = document.createElement("DIV"); 
clipboard.innerHTML = xhrResponse; 
var searchingForSomething = clipboard.getElementById('status'); 
console.log(searchingForSomething.innerHTML); // => SUCCESS 

您的臨時DIV甚至不需要在文檔中工作。

+0

但是,如果沒有jQuery,是冗長的。你可以通過搜索整個樹來完成,最簡單的代碼是遞歸的,或者如果你只支持高端瀏覽器,你可以使用querySelector。 – jpsimons 2011-05-06 03:37:12