В раскрывающихся списках категорий должен быть какой-то уникальный фактор (поскольку вы говорите, что при выборе будет загружаться опции в подкатегории).
Я бы использовал метод data (), чтобы присоединить этот уникальный идентификатор (будь то идентификатор или что-то еще) для каждого из этих раскрывающихся списков, а также присоединение класса к каждому из раскрывающихся списков (mywidgetname-category или что-либо еще).
Затем выполните итерацию по каждому из соответствующих элементовк вашему классу, прикрепив обработчик события change (), который затем считывает уникальный идентификатор, который вы прикрепили с помощью data (), и изменяет соответствующий выбор подкатегории.