21
Июл
2021

При закрытии popup снимать EventListener с input

Есть popup с несколькими input и кнопками "сохранить" и "закрыть".

Состояние кнопки зависит от ввода в input.

Если в них вводится что-либо кнопка активируется, если текст убираем - disable.

На кнопки навешивается EventListener при вызове ф-ии openPopup.

На input навешиваются EventListener с помощью перебора массива.

Задача: При закрытии popup снимать EventListener с input.

Ниже упрощенный код:

openPopup() {
    // навешиваем слушатели на инпуты
    Array.from(inputs).forEach((input) => {
        input.addEventListener('input', function text(evt) {
            changeInputText.bind(text)(evt, popupButtonSave);
        })
    }

    // навешиваем слушатель на закрытие
    popupButtonCancel.addEventListener('click', function test() {
        closePopUp(openedPopUP);
        popupButtonCancel.removeEventListener('click', test);
    })

}

Источник: https://ru.stackoverflow.com/questions/1307356/%D0%9F%D1%80%D0%B8-%D0%B7%D0%B0%D0%BA%D1%80%D1%8B%D1%82%D0%B8%D0%B8-popup-%D1%81%D0%BD%D0%B8%D0%BC%D0%B0%D1%82%D1%8C-eventlistener-%D1%81-input

Тебе может это понравится...

Добавить комментарий