Как захватить onSubmit событие для формы?

Проблема в том, что вы меняете положение эскизов-d4 на абсолютное, что выводит его из нормального потока контента, и когда вы это делаете, вы теряете 140px в высоту, поскольку это его высота. Когда вы теряете эту высоту, ваш свиток становится слишком низким. Я не уверен, как ваш проект собирается вместе, поэтому я не знаю, как вы хотите это исправить, но это проблема.

Вы можете позиционировать абсолютные большие пальцы с самого начала, если это соответствует вашим потребностям, или вам понадобится заполнитель, чтобы сохранить это пространство или минус 140 от прокручиваемой позиции.

8
задан AGE 7 May 2016 в 14:15
поделиться

3 ответа

Измените это:

formCheck.onSubmit = doMapping()

к этому:

formCheck.onSubmit = doMapping

Когда Вы добавляете круглую скобку в конец функции, Вы выполняете ту функцию. Когда Вы присваиваете функцию (или передайте ее в качестве параметра другой функции), необходимо опустить круглую скобку, поскольку это - способ получить указатель функции в JavaScript.


Править: Необходимо будет также переместить объявление doMapping функция выше присвоения той функции к onsubmit событию как это (хорошая выгода tvanfosson!):

function doMapping() {
        alert("form submitted");
        return false;
    }

formCheck.onSubmit = doMapping(); 

Однако, если doMapping функция не используется в другом месте, можно объявить doMapping функционируйте как анонимную функцию как это:

formCheck.onSubmit = function() {
        alert("form submitted");
        return false;
    }

который кажется немного более чистым мне.

12
ответ дан 5 December 2019 в 08:26
поделиться

Используя jQuery.

$(document).ready( function() {
    $('#commentform').submit( function() {
        alert('form submitted');
        return false;
    });
});
8
ответ дан 5 December 2019 в 08:26
поделиться

Спасибо! На самом деле я решил его иначе, с помощью и предложения Andrew и window.onload события - я думаю, что проблема состояла частично в том, потому что элемент на самом деле не загрузился.

window.onload = function(){
    if (document.getElementById("commentform")){
        document.getElementById("commentform").onsubmit = doMapping;
    }
}

function doMapping(){
            alert("form submitted");
            return false;
}
0
ответ дан 5 December 2019 в 08:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: