а тут другого варианта и не получиться — только ручками, только js
весь набор категорий лучше выгрузить в js-массив, который потом скормить объекту, реализующему работу с деревом (parent-children), и дальше уже с этим объектом удобно будте работать, оживляя кнопки