2009-11-28 81 views
17

我想知道是否有方法將字符串轉換爲jQuery對象,並選擇內部元素而不將整個字符串注入DOM並在其中進行操作。謝謝。將字符串轉換爲jQuery對象並選擇內部元素

如果可能的話,請給我舉例轉換

<div id=a1></div> 
<div id=a3></div> 

,並從對象變量選擇A1。

回答

26

這將創建HTML元素,並找到A1元素:

var element = $('<div id="a1"></div><div id="a3"></div>').filter('#a1').get(0); 
6

做到這一點,正確的方法是:

var a1 = $('<div id="a1"></div><div id="a3"></div>').filter('#a1')[0]; 

獲取的DOM元素了與[0]相當於.get(0)

更新:有意思,我從來沒有碰到過這樣的極端情況,但在此之前:

var a1 = $("#a1", "<div id=a1><//div><div id=a3><//div>")[0]; 

當元素是在頂層,我認爲是不工作一個錯誤。我以前從來沒有遇到過這種情況,所以我想我會把它留在這裏作爲一個警示性的故事。感謝Crescent Fresh指出了這一點。

+2

不,您已轉換爲'$().find('#a1')',而'find'不搜索集合中的頂級元素。然而@ Guffa的'filter'答案確實如此。 – 2009-11-28 02:28:27