2010-07-17 78 views
4

我有一些內容用<hr>標記分隔。我需要做的是在開始製造商和結束標記之間進行換算。jquery包含元素之間的內容

鑑於這種標記:

<hr class=begin> 
some content 
<some tags> 
more content 
<more tags> 
<hr class=end> 

這就是我需要的是:

<hr class=begin> 
<div class=content> 
    some content 
    <some tags> 
    more content 
    <more tags> 
</div> 
<hr class=end> 

我可以.nextAll()做到這一點,但它似乎應該有一個更好的解決方案。

回答

5

您可以使用.nextUntil()這樣的:

$("hr.begin").nextUntil("hr.end").wrapAll("<div class='content'></div>"); 
+0

對於該代碼也是如此。 – Sarfraz 2010-07-17 15:15:48

+0

我接受你的答案,因爲nextUntil()是nextAll()的正確替代方法,但這兩種方法都不適用於我想要做的事情,因爲我還需要包裝標記之間的自由文本。我將重新提出這個問題。謝謝! – user191688 2010-07-18 15:06:56

1

您可能正在尋找的jQuery .nextUntil()方法。

獲取每個 元素最多,但不包括通過選擇相匹配的 元素的所有兄弟姐妹之後。