Mam następujący kod HTMLzawijać wszystkie elementy pomiędzy dwoma elementami
<div class="bar-something"><div class="fn-label"> SOMETHING</div> </div>
<div class="bar-appointment"><div class="fn-label"> Ap1</div></div>
<div class="bar-appointment"><div class="fn-label"> Ap2</div></div>
<div class="bar-appointment"><div class="fn-label"> Ap3</div></div>
<div class="bar-something-else"><div class="fn-label"> SOMETHING</div></div>
<div class="bar-appointment"><div class="fn-label"> Ap1</div></div>
<div class="bar-appointment"><div class="fn-label"> Ap2</div></div>
<div class="bar-appointment"><div class="fn-label"> Ap3</div></div>
<div class="bar-something-odd"><div class="fn-label"> SOMETHING</div></div>
Chcę owinąć wszystkie bar-appointment
elementy z innego DIV
więc DOM
będzie wtedy wyglądać tak:
<div class="bar-something"><div class="fn-label"> SOMETHING</div> </div>
<div class="test">
<div class="bar-appointment"><div class="fn-label"> Ap1</div></div>
<div class="bar-appointment"><div class="fn-label"> Ap2</div></div>
<div>
<div class="bar-something-else"><div class="fn-label"> SOMETHING</div></div>
<div class="test">
<div class="bar-appointment"><div class="fn-label"> Ap1</div></div>
<div class="bar-appointment"><div class="fn-label"> Ap2</div></div>
<div class="bar-appointment"><div class="fn-label"> Ap3</div></div>
<div class="bar-appointment"><div class="fn-label"> Ap4</div></div>
<div class="bar-appointment"><div class="fn-label"> Ap5</div></div>
</div>
<div class="bar-something-odd"><div class="fn-label"> SOMETHING</div></div>
I Próbowałem następujących rzeczy, ale wszystkie wewnętrzne znaczniki też się zawijały i nie chcę tego.
$('.bar-appointment').each(function() {
$(this).nextUntil("div[class!='bar-appointment']").andSelf().wrapAll('<div class="test"></div>')});
Próbowałem też za pomocą tego właśnie wrap
i zawija tylko każdy element osobno, nie jako grupa, jak chciałbym.
Jaki jest najlepszy sposób na robienie tego?
http://jsfiddle.net/arunpjohny/mxf85eu6/ –