Как исправить дубилирование события клик?
Есть js скрипт который отвечает за открытие выбора статуса и непосредственно выбора по клику. При повторном открытии выбора статуса и клика по статусу происходит дублирование события клик.
Js
// активируем выбор статуса
$('body').on('click', '.StatusLoadList', function(){
var obj = this;
id = obj.getAttribute('id') || 'status-check';
this.checkStatus = $("#check_"+id+"");
console.log(this.checkStatus);
this.placeholder = this.checkStatus.children('span');
this.opts = this.checkStatus.find('ul.dropdown > li');
this.checkStatus.toggleClass('active');
// выбираем статус
obj.opts.on('click',function(){
var opt = $(this);
console.log('выбрали статус');
});
});
При этом, если хочется выбрать и еще раз изменить статус, то можно было это сделать, но предыдущее событие клик не дубилировалось.
Ответы (1 шт):
Автор решения: Алексей Шиманский
→ Ссылка
Оно?
$('body').on('click', '.StatusLoadList', function(){
....
....
obj.opts.off('click').on('click',function(){
var opt = $(this);
console.log('выбрали статус');
});
});