В чем разница между $ (form) .submit и $ (form) .on («submit») в jQuery?

Я написал следующий код, который не приводит к вызову AJAX в моем браузере:

$(document).ready(function () {
  $('form').submit(function(event) {
    event.preventDefault();
    var action = $(this).attr('action');
    var data = $(this).serialize();
    $.post(action, data, function(response) {
      $("#die").html(response);
    });
  });
});

Тем не менее, мой инструктор в реальном времени кодировал следующий код в классе, который работает:

$(document).ready(function () {
  $("form").on("submit", function(event) {
    event.preventDefault();
    var action = $(this).attr("action");
    var formData = $(this).serialize();
    $.post(action, formData, function(responseContent) {
      $("#die").html(responseContent);
    });
  });
});

Насколько я могу судить, единственное значимое различие между моим кодом и его кодом заключается в использовании «on» против «submit» в строке 2. На самом деле, на api.jquery.com/submit Фонд jQuery утверждает, что « Этот метод является ярлыком для .on ('submit', handler) ... ". Что приводит меня в замешательство относительно того, почему эти два фрагмента ведут себя по-разному.

Ответы на вопрос(3)

Ваш ответ на вопрос