jQuery как остановить вызванное событие щелчка от пузырьков


У меня был такой код:

$('.panel-select').click(function() {
  $(this).children('input').trigger('click');
});

Но я получил RangeError: превышен максимальный размер стека вызовов. Я погуглил некоторые и обнаружил, что событие всплывает в DOM.

Я пытаюсь остановить это, но у меня ничего не получается. Я попробовал это:
$('.panel-select').click(function(e) {
  e.stopPropagation();
  $(this).children('input').trigger('click');
});

Но это не работает. Как я должен делать это?

1 2

1 ответ:

Вам нужно привязать событие к дочерним элементам:

$('.panel-select').click(function() {
   $(this).children('input').trigger('click');
});

// try adding to the below event not on the parent.

$('.panel-select input').click(function(e) {
    e.stopPropagation();
});