Javascript перезагружает addEventListner при создании динамических кнопок

Я создаю проект, в котором на форме есть несколько кнопок камеры. Пример: один для фотографирования окружающей среды, а другой для фотографирования пользователей и т. д. Я использую ванильный javascript. Это адаптивный сайт с html и css.

Когда пользователь захвата данных нажимает кнопку камеры, я использую

input accept='image/*' onclick=\"assignVar('inp_img6','file-upload6')\" capture='camera'

Затем я использую значения для изменения размера изображений и создаю значения base64 для обновления скрытых полей ввода для отправки при загрузке пользователем.

Так что со статическими кнопками это прекрасно работает. Моя проблема возникает, когда я хочу создавать кнопки динамически или с +, чтобы пользователь мог добавлять больше фотографий.

Я использую addEventListner, чтобы увидеть, изменился ли ввод файла, а затем запускаю свою функцию, чтобы изменить размер фотографий и добавить base64 к скрытому вводу.

Когда я затем создаю кнопку +, чтобы добавить дополнительные поля, addEventListner не работает.

Любые идеи или предложения о том, как обойти проблему? Я новичок в javascript и безуспешно пытался искать.

Добро пожаловать в Stack Overflow! Пожалуйста, возьмите тур (вы получите значок!), осмотритесь и прочитайте центр помощи, в частности Как задать хороший вопрос?. Я также рекомендую Написание идеального вопроса«Я использую addEventListner… addEventListner не работает». Джона Скита. Мы не можем помочь вам с кодом, который мы не видим. Пожалуйста, добавьте минимальный воспроизводимый пример, демонстрирующий проблему, в идеале работоспособный, используя кнопку на панели инструментов [<>]; вот как.

T.J. Crowder 04.02.2019 11:16

Прикрепите событие к вновь созданному элементу или делегируйте его ближайшему общему элементу-предку.

Teemu 04.02.2019 11:16

Спасибо, не знаю, что это значит. Я использую document.getElementById('id_upload0').addEventListener('chan‌​ge', fileChange, false); поэтому вместо использования document.getElementById вы предлагаете создать div, а затем проверить div?

Juan Rautenbach 04.02.2019 11:32

Нет, используйте вновь созданный элемент, который вы создали путем клонирования. Обратите внимание, что id в документе должны быть уникальными. Если бы вы только что показали свой код...

Teemu 04.02.2019 12:15
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
4
32
0

Другие вопросы по теме