Делегирование событий

85
13 июня 2021, 22:00

у меня есть несколько элементов, события на которые нужно обрабатывать похожим образом, как поставить единый обработчик на их общего предка .Т.е При изменении в инпуте должен добавляться класс .changedInput только тому инпуту, в котором произошло изменение при этом (самое главное) кнопка с id="settings-for-device' привязанная к инпуту должна получать класс button-press, если кликнуть повторно - отмена, то получать класс button-not-press При этом, остальное инпуты с кнопкаими на страницы без изменений.

исходная разметка

<div id="ikz-settings-sets">
 <div id="convert-json-to-html"></div>

То что добавляю ... Проблема в том, что контент с html добавляется через

 $('#convert-json-to-html').append( convertJson (..........) );

Содержимое с разметкой

   function convertJson(......) {
 var str = str +'<input id="' + nameOfKey + key + '"  >' + '</div>' +      
      '<div id="settings-for-device' 
    'class="button-other"></div>';       
                    return str;
                  [![введите сюда описание изображения][1]][1] }
Answer 1

Что то вроде этого

$('#convert-json-to-html').on("change", "ваш input",function(){
  $(this).addClass("changedInput");
  $(this).next().toggleClass("button-press button-not-press");
})
READ ALSO
Как поделить страницу сайта?

Как поделить страницу сайта?

Как поделить сайт как на картинке? Серый круг это первая часть а белое это втораяТоесть поделить сайт на две части но обводку сделать выпуклой?...

110
Angular дерево и таблица

Angular дерево и таблица

На одной странице должно быть дерево и таблица (как Windows explorer) Как разместить компоненты, чтобы они находились рядом и дерево не сдвигалось...

114