Проверка JavaScript не выполняется правильно. Форма отправляется в любом случае без проверки вопроса
Я пытался изменить с getElementByID.value;
и document.form[][].value;
Попытался изменить мой JavaScript, чтобы сделать это для моей функции init()
;но также в атрибуте HTML obsubmit.
Действительно запутался в том, что я делаю неправильно
function regValidate() {
var errMsg = document.getElementById("errMsg");
var username = document.getElementById("Username").value;
errMsg.style.padding = "10px";
var emailRE = "@";
var email = document.forms["register"]["email"].value;
if (email.match(emailRE) || email.length < 6) {
errMsg.innerHTML = "Please enter a valid email";
return false;
} else if (username.length < 5) {
errMsg.innerHTML = "Please enter a valid username";
}
}
<form name="register" action="(this is a realwebsite, removing due to privacy + legal reasons)" onsubmit="return regValidate()" method="post">
<p>
<h1 class="form--title">Register</h1>
</p>
<div id="errMsg"></div>
<p>
<label for="email">Email</label>
<input type="text" name="email" id="email" placeholder="Enter your email" onkeypress="this.style.width = ((this.value.length + 1) * 8) + 'px';" />
</p>
<p>
<label for="username">User ID</label>
<input type="text" name="username" id="username" placeholder="Enter your username" onkeypress="this.style.width = ((this.value.length + 1) * 8) + 'px';" />
</p>
<p>
<input type="submit" value="submit" /><br>
<input type="reset" value="reset" />
</p>
Нет сообщения об ошибке, оно просто идет прямо на страницу формы, которая показывает, что было отправлено для какого атрибута имени ...