JQuery не отрабатывает функция .on('click'

Появилась очень странная проблема, при попытке вызвать вот это:

$("#taskAddButton").on('click', function() {
  alert("Test");
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div class="modal fade" id="addTaskModal" tabindex="-1" role="dialog" aria-labelledby="addTaskModal" aria-hidden="true">
  <div class="modal-dialog" role="document">
    <div class="modal-content">
      <div class="modal-header">
        <h5 class="modal-title" id="exampleModalLabel">Add Task</h5>
        <button type="button" class="close" data-dismiss="modal" aria-label="Close">
              <span aria-hidden="true">&times;</span>
            </button>
      </div>
      <div class="modal-body">
        <div class="form-group">
          <label for="TaskNameInput">Task name</label>
          <input type="text" class="form-control" id="TaskNameInput">
        </div>
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
        <button type="button" class="btn btn-primary" id="taskAddButton">Save changes</button>
      </div>
    </div>
  </div>
</div>

Почему-то ничего не происходи, хотя есть еще несколько похожих функций где все прекрастно работает.


Ответы (2 шт):

Автор решения: Igor

Скорее всего, обработчик навешивается в момент, когда элемент "#taskAddButton" еще не существует в дереве страницы.

$(document).on('click', "#taskAddButton", function () {
    alert("Test");
});
→ Ссылка
Автор решения: Алекс Данилин

насколько помню у jquery свой клик )

$('#addTaskModal').click(function() {
  alert('test');
});
<div class="modal fade" id="addTaskModal" tabindex="-1" role="dialog" aria-labelledby="addTaskModal" aria-hidden="true">
  <div class="modal-dialog" role="document">
    <div class="modal-content">
      <div class="modal-header">
        <h5 class="modal-title" id="exampleModalLabel">Add Task</h5>
        <button type="button" class="close" data-dismiss="modal" aria-label="Close">
              <span aria-hidden="true">&times;</span>
            </button>
      </div>
      <div class="modal-body">
        <div class="form-group">
          <label for="TaskNameInput">Task name</label>
          <input type="text" class="form-control" id="TaskNameInput">
        </div>
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
        <button type="button" class="btn btn-primary" id="taskAddButton">Save changes</button>
      </div>
    </div>
  </div>
</div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

→ Ссылка