<p class="bodytext">
<span class="datum">19.11.2015:</span>Some text <a href="path/to/link" title="some title" class="download">Some text</a>. Again some text!
</p>
<p class="bodytext">
<span class="datum">19.11.2015:</span>Maybe also only some text.
</p>
<p class="bodytext">
<span class="datum">19.11.2015:</span><a href="path/to/link" title="some title" class="download">Only with link</a>
</p>
应该在 jQuery 之后:
<p class="bodytext">
<span class="datum">19.11.2015:</span>
<div class="someClass">Some text <a href="path/to/link" title="some title" class="download">Some text</a>. Again some text!</div>
</p>
<p class="bodytext">
<span class="datum">19.11.2015:</span>
<div class="someClass">Maybe also only some text.</div>
</p>
<p class="bodytext">
<span class="datum">19.11.2015:</span>
<div class="someClass"><a href="path/to/link" title="some title" class="download">Only with link</a></div>
</p>
因此,之后的所有 HTML 代码</span>
都应该包装在一个 div 中,直到下一次出现</p>
我尝试了什么:
$(".datum").each(function (index) {
$(this).nextUntil("p").andSelf().wrapAll("<div class='someClass' />");
});
或者:
$(".datum").nextUntil("p").wrap('<div class="someClass" />');
也没有用。