JSFiddle - React, Tailwind, and code Playground

by alnitak

HTML

<ul class="top">
    <li class="main"> Cat 0
    <ul class="subCat">
        <li>Subcat 0
            <ul class="subCat">
                <li>Sub-Subcat 0
                    <ul class="subCat"></ul>
                </li>
            </ul>
        </li>
        <li>Subcat 1</li>
    </ul>
</li>
</ul>

JavaScript

(function($) {
    $.fn.menuID = function(base) {
        base = base || 'cat';
        this.filter('li').each(function(i) {
            this.id = base + '_' + i;
            $(this).children('ul').children('li').menuID(this.id);
        });
    };
})(jQuery);

$('.main').menuID();