Выполнить onclick перед вводом

К этому сложно подойти, потому что я использую расширение Chrome «Пользовательский javascript для веб-сайтов 2». Так что я не могу изменить код, я могу только добавить.

На веб-странице есть форма, которая загружается с помощью запроса ajax. Затем есть кнопка без проверки формы. Я хочу добавить проверку формы.

Форма по умолчанию отправляет форму с HTML-атрибутом onclick внутри ввода.

1- Первый неудачный подход:

document.getElementById('submit-btn').onclick = myValidation;

Результат: срабатывает с первого нажатия кнопки. Но во второй раз отправляет по умолчанию.

2- Второй неудачный подход:

document.getElementById('submit-btn').addEventListener('click', myValidation, true);

Результат: сначала выполните отправку по умолчанию (атрибут onclick), а затем выполните функцию myValidation. Я подумал, что, поставив addEventListener истинный аргумент, я буду стрелять первым. Но нет.

Есть ли способ сделать это?


person Angel Luis    schedule 24.08.2017    source источник


Ответы (1)


в первом случае вы должны указать путь к функции, а НЕ к результату выполнения функции

НЕПРАВИЛЬНО:

document.getElementById('submit-btn').onclick = myValidation();

ПРАВИЛЬНО:

document.getElementById('submit-btn').onclick = myValidation;
person Oleh Kurpiak    schedule 24.08.2017
comment
Извините за это, это была ошибка при написании ответа, я изучаю javascript. - person Angel Luis; 24.08.2017