Наконец-то нашёл более-менее простой способ.
Нужно прописать нечто такое перед инструкциями в tryToLogin():
if(!$('.login-form')[0].checkValidity()) {
$('.login-form__submit').off( "click" ).click().click(function (e) {
e.preventDefault();
tryToLogin();
});
return false;
}
Т.е. если браузер сообщает, что проверка не пройдена, мы анбиндим функцию с клика на сабмит, кликаем сабмит (браузер покажет нативные сообщения), и сразу же биндим функцию обратно.