まず、HTMLにアクセスできません。私が編集できないシステムによって生成されています。
次のようなリストがあります。
<ol>
<li class="odd a one">List Item (type1)</li>
<li class="even b two">List Item (type1)</li>
<li class="odd c three">List Item (type1)</li>
<li class="even d one">List Item (type1)</li>
<li class="odd a two">List Item (type1)</li>
<li class="even b three">List Item (type1)</li>
<li class="odd c one">List Item (type1)</li>
<li class="even d two">List Item (type2)</li>
<li class="odd a three">List Item (type2)</li>
<li class="even b four">List Item (type2)</li>
</ol>
このリストを分割し、次のように jQuery を使用して見出しを付けたいと思います。
$('li:contains("type2")').first().before('</ol><h2>Type 2 starts here</h2><ol>')
ただし、結果のコードは次のとおりです (Firebug によると):
<ol>
<li class="odd a one">List Item (type1)</li>
<li class="even b two">List Item (type1)</li>
<li class="odd c three">List Item (type1)</li>
<li class="even d one">List Item (type1)</li>
<li class="odd a two">List Item (type1)</li>
<li class="even b three">List Item (type1)</li>
<li class="odd c one">List Item (type1)</li>
<h2>Type 2 starts here</h2>
<ol></ol>
<li class="even d two">List Item (type2)</li>
<li class="odd a three">List Item (type2)</li>
<li class="even b one">List Item (type2)</li>
</ol>
次のコードを生成するためにこれを行う方法はありますか?:
<ol>
<li class="odd a one">List Item (type1)</li>
<li class="even b two">List Item (type1)</li>
<li class="odd c three">List Item (type1)</li>
<li class="even d one">List Item (type1)</li>
<li class="odd a two">List Item (type1)</li>
<li class="even b three">List Item (type1)</li>
<li class="odd c one">List Item (type1)</li>
</ol>
<h2>Type 2 starts here</h2>
<ol>
<li class="even d two">List Item (type2)</li>
<li class="odd a three">List Item (type2)</li>
<li class="even b one">List Item (type2)</li>
</ol>
ここにすべてのフィドルがあります:http://jsfiddle.net/a78pT/1/