Це може бути спричинено з таких причин:
- Ви не раз включали сценарій в один і той же файл html
- Ви двічі додавали прослуховувач подій (наприклад: using
onclick
атрибута елемента, а також за допомогою jquery
- Подія продувають до деякого батьківського елемента. (Ви можете розглянути можливість використання
event.stopPropagation
).
- Якщо ви використовуєте
template inheritance
лайкextends
в Django
, швидше за все , ви включили сценарій в більш ніж один файл , які в поєднанні один з одним include
абоextend
теги шаблонів
- Якщо ви використовуєте
Django
шаблон, ви неправильно розмістили block
всередині іншого .
Отже, вам слід або виявити їх, і видалити копію імпорту. Це найкраще, що потрібно зробити.
Іншим рішенням є видалення всіх click
прослуховувачів подій у сценарії, наприклад:
$("#myId").off().on("click", function(event) {
event.stopPropagation();
});
Ви можете пропустити, event.stopPropagation();
якщо ви впевнені, що подія не відображається.