Подтвердить что ты не робот

JQuery Вкл. <выберите> Изменить событие без сбоев

В заголовке есть следующее:

$('body').on('change', '#userFilter', function(){
   console.log('changed');
});

И этот элемент динамически вставляется на страницу при нажатии закладки:

<select id="userFilter">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
</select>

Проблема в том, что при изменении выпадающего меню ничего не отображается на консоли.

4b9b3361

Ответ 1

Оберните его в $ (document).ready(function() {....}), чтобы HTML-элемент управления userFilter был добавлен в DOM и доступен для javascript

$(document).ready(function() {
   $('body').on('change', '#userFilter', function(){
      console.log('changed');
   });
});

Обработчик, переданный в.ready(), гарантированно будет выполнен после того, как DOM будет готов, поэтому обычно это лучшее место для присоединения всех других обработчиков событий и запуска другого кода jQuery, jQuery docs.

Ответ 2

Хотя это немного не связано с OQ, если вы попали сюда, потому что ваш выбор не стреляет, убедитесь, что в предыдущее время вы не проверяли "Запретить эту страницу показывать..." в alert(), Вам нужно будет закрыть вкладку и снова открыть этот URL, чтобы это снова стало видимым.