Вопрос

Я хочу получить ручку на представленную форму перед отправкой.

  1. На странице может быть больше одной формы
  2. Я не знаю имя формы / ID

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

Это было полезно?

Решение

С jQuery это было бы что-то вроде этого:

$(function() {
  $('form').submit(function() {
    // the code goes here;
    // variable `this` is an instance of form
    alert($(this).className);
  });
});

Другие советы

Без jQuery это было бы что-то так:

for (var i=0; i < document.forms.length; i++){
  document.forms[i].onSubmit = function(){
    // logic goes here;
    // document.forms[i] is the instance of form
    if (formIsHappy()){
      return true; //form submits
    }else{
      return false; //prevents the submit
    }
  };
}

Если вы используете jQuery, вы можете посмотреть, что делает что-то подобное:

$("form").submit(function(e) {
    console.log("Form ID that is being submit %s",$(this).attr("id"));
});

В чистом JavaScript вы можете настолько что-то похожее, выполнив документ. GetElementsBytagname («Форма») и петля через массив, который вы получаете.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top