Monday, April 16, 2012

Recursively assign each node in a nested list a unique id with jquery

This is the original list:



<ol>
<li>
<a href="client.htm">Client</a>
<ol>
<li><a href="client/nokia.htm">Nokia</a></li>
<li><a href="client/microsoft.htm">Microsoft</a></li>
<li><a href="client/sony.htm">Sony</a></li>
<li><a href="client/samsung.htm">Samsung</a></li>
</ol>
</li>
<li><a href="contact.htm">Contact</a></li>
</ol>


I would like to transform it into something like this:



<ol>
<li>
<a id="sitemap-item-1" href="client.htm">Client</a>
<ol>
<li><a id="sitemap-item-1-1" href="client/nokia.htm">Nokia</a></li>
<li><a id="sitemap-item-1-2" href="client/microsoft.htm">Microsoft</a></li>
<li><a id="sitemap-item-1-3" href="client/sony.htm">Sony</a></li>
<li><a id="sitemap-item-1-4" href="client/samsung.htm">Samsung</a></li>

</ol>
</li>
<li><a id="sitemap-item-2" href="contact.htm">Contact</a></li>
</ol>


Notice: the id in is base on its nested level in the list.





No comments:

Post a Comment