Отправка формы по кнопке enter и по клику
Как реализовать авторизацию и по enter и по клику?
Вот сама кнопка, только сделана через ссылку
<a href="#" class="regpopup_content_form_submit" id="submit_button_aut_user"><?=GetMessage("AUTH_LOGIN_BUTTON")?></a>
js код
// авторизация пользователя и вывод ошибок
document.getElementById('submit_button_aut_user').onclick = function(){
let login = document.getElementById('user_aut_login').value
let password = document.getElementById('user_aut_pass').value
var res = getAutorisation(login, password).then(function(data) {
$result = JSON.parse(data);
if($result['TYPE']=='ERROR'){
document.getElementById('message_error_aut').innerHTML = '• '+$result['VALUE'];
}
if($result['TYPE']=='SUCCES'){
location.reload();
}
});
};
Ответы (4 шт):
Автор решения: DemoS
→ Ссылка
Как-то так
document.getElementById('myform').addEventListener('keydown', function(e){
if (e.keyCode == 13) {
this.submit();
}
})
<form id="myform">
<input type="text">
</form>
Автор решения: Алекс Данилин
→ Ссылка
var password = document.getElementById('user_aut_pass');
password.addEventListener('keydown', function(e){
var subm = document.getElementById('submit_button_aut_user');
if(e.keyCode == 13) {
subm.click();
console.log('succ');
}
})
<input id="user_aut_pass" type="text">
<a id="submit_button_aut_user" href="">subm</a>
может поставить прослушку на события нажатия кнопки( если она не в форме) ? document.getElementById('user_aut_pass').value (это ведь инпут ?) и написать такую же функцию
Автор решения: gusarov.f
→ Ссылка
Кнопка авторизации все равно ведь в форме будет. Если фокус в полях формы, то при нажатии "Enter" и так будет происходить submit. Просто обработчик клика кнопки добавьте и на форму.
<form id="auth_form">
...Поля формы
<a href="#" class="regpopup_content_form_submit" id="submit_button_aut_user">
<?=GetMessage("AUTH_LOGIN_BUTTON")?>
</a>
</form>
function handleForm(event) {
event.preventDefault()
...Ваш код обработки
}
$('#auth_form').on('submit', handleForm)
$('#auth_form #submit_button_aut_user').on('click', handleForm)
Автор решения: Григорий Мытарев
→ Ссылка
<input type="submit" id="submit_button_aut_user" class="regpopup_content_form_submit" value="<?=GetMessage("AUTH_LOGIN_BUTTON")?>" />
Просто заменил кнопку-ссылку на нормальный инпут, теперь авторизация идет и по клику и по Enter