У меня на странице есть следующий код:
$('form.enter-doesnt-submit').submit(function () {
console.log($(document.activeElement));
if($(document.activeElement).attr('type') == 'submit') {
console.log
return true;
} else {
console.log("Prevented enter from submitting the form.");
return false;
}
});
Что я вполне уверен, что я получил от stackoverflow давным-давно. Работает нормально, только не в Safari. Причина в том, что когда я выхожу из системы document.activeElement
, это дает мне всю страницу , поэтому, конечно, тип атрибута не передается, и поэтому форма не отправляется, даже когда вы нажимаете кнопку отправки.
Мне нужно иметь возможность запретить отправку заявок в моей форме, потому что они являются онлайн-тестами, и если пользователь пишет ответ и случайно нажимает клавишу ввода до того, как форма будет завершена, они будут помечены неправильно, поскольку они фактически не закончили тест.
Может ли кто-нибудь помочь мне каким-то образом предотвратить нажатие Enter на Safari?