I need to add a Button to every select2 item and prevent the default event so only the button gets triggered.
I have the following code but the normal onSelect
event still gets triggered:
select.on('select2:select', test2);
function test2(e) {
if (e.params.originalEvent.target.classList.contains('TreeButton')) {
//stop event execution
e.stopPropagation();
e.preventDefault();
return false;
} else {
//execute normal
}
}
I need to add a Button to every select2 item and prevent the default event so only the button gets triggered.
I have the following code but the normal onSelect
event still gets triggered:
select.on('select2:select', test2);
function test2(e) {
if (e.params.originalEvent.target.classList.contains('TreeButton')) {
//stop event execution
e.stopPropagation();
e.preventDefault();
return false;
} else {
//execute normal
}
}
Share
Improve this question
edited Jan 3, 2018 at 18:11
beaver
17.7k2 gold badges43 silver badges68 bronze badges
asked Jan 3, 2018 at 14:49
TiDiTiDi
631 silver badge4 bronze badges
1 Answer
Reset to default 10Try to catch select2:selecting
event:
select.on("select2:selecting", function (e) {
if (e.params.args.originalEvent.target.className === 'btn') {
e.preventDefault();
}
}
Here is a jsfiddle: http://jsfiddle/beaver71/dtjhpnm7/