@narem

Как запретить переход по action при условии?

Как не продолжать отправку формы(запретить переход action) если срабатывает определенное условие?
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Authorization</title>
        <link rel="stylesheet" type="text/css" href="style/style.css">
        <meta name="viewport" content="width=device-width, initial-scale=1">
    </head>
    <body>
        <section id="sect-auth">
            <form action="/index.php" method="GET" id="form-authorization">
                <input type="text" placeholder="Логин" id="login" name="login">
				<span class="message" id="message"></span>
                <input type="password" placeholder="Пароль" id="password" name="password">
				<div id="button-auth">
					<input type="checkbox" name="unsave" id="unsave">
					<label for="unsave">Не мой компьютер</label>
				</div>
                <input type="submit" id="enter" value="Войти">
            </form>
        </section>
    <script src="script/script.js" defer="defer"></script>
    </body>
</html>

class Check{
	checkEmpty(){
		this.login = document.getElementById('login').value,
		this.passw = document.getElementById('password').value,
		this.error = document.getElementById('message');
		if(!this.login || !this.passw){
			this.message = "Не введен логин или пароль";
			this.error.innerHTML = this.message;
			return false;
		}else{
			this.comparison();
		}
	}
	comparison(){
		this.reg = /[^0-9a-zA-Zа-яА-Я]/;
		if(this.passw.search(this.reg) == -1 && this.login.search(this.reg) == -1){
			this.error.innerHTML = '';
		}else{
			this.message = "Логин и пароль должны состоять только из цифр и букв";
			this.error.innerHTML = this.message;
			return false;
		}
	}
}

window.onload = function(){
	var check = new Check();
	document.getElementById('enter').onclick = function(){
		check.checkEmpty();
	}
}
  • Вопрос задан
  • 903 просмотра
Пригласить эксперта
Ответы на вопрос 1
ruvasik
@ruvasik
https://www.bryce.ru
Передавать объект события (из обработчика onclick/onsubmit) и вызывать для него preventDefault()

onclick = function (e) {
  if (disabled) 
    e.preventDefault();
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы