Вместо
.label-text
переключайте класс у максимально дальних не общих предков input'ов, т.е., у
.thumb
. Соответственно, стилизовать надо будет не
.label-text.класс
, а
.класс .label-text
. Зачем делать именно так? Потому что не придётся переписывать js-код, если вдруг вам завтра захочется кроме
.label-text
стилизовать ещё что-то, или решите изменить взаимное расположение элементов.
Где input'ы находятся, что за input'ы, какой класс надо переключать:
const containerSelector = '.thumb';
const inputSelector = 'input[id^="input-"]';
const activeClass = 'active';
Переключать класс можете по-прежнему с помощью jquery:
$(containerSelector).on('input', inputSelector, function(e) {
$(e.delegateTarget).toggleClass(activeClass, !!this.value);
});
А можете начать осваивать чистый js:
const onInput = ({ target: t, currentTarget: ct }) =>
t.matches(inputSelector) && ct.classList.toggle(activeClass, !!t.value);
document.querySelectorAll(containerSelector).forEach(n => {
n.addEventListener('input', onInput);
});