2010-11-19 53 views
0

所以我在jQuery .each()調用中遍歷返回元素的列表,我想要做的是返回一個字符串,其中包含有問題的元素。例如:返回jQuery中元素的標籤和內容

<div class="foo"> 
    <div class="bar">Blah blah</div> 
    <div class="bar">Blah blah</div> 
</div> 

If I ran a $('.bar').each(function()) I want it to return 
'<div class="bar">Blah blah</div>' 

回答

1
var tag = this.outerHTML || $('<div>').append($(this).clone()).html(); 

此使用瀏覽器的outerHTML財產,如果它是可用的,否則它會創建一個新的<div>,使該元素的副本,裏面放置它,並獲得是對<div>.html()

+0

非常感謝,我是通過jQuery的文檔遊弋尋找outerHTML,沒」不知道它是原生的JS。 – Conor 2010-11-19 22:56:47

+0

@Conor - 不客氣。 :O) – user113716 2010-11-19 22:58:51

0

你想要父節點的html。

$('.bar').each(function() { alert($(this).parent().html();) }); 

雖然這將讓你所有的兄弟節點以及。你可以得到得到實際的DOM節點與

$(this).get(0).outerHTML 

然後