JSFiddle - React, Tailwind, and code Playground
HTML
<h2>Регистрация</h2>
<script src="check.js"></script>
<form action="action.php" method="post" name="form" onsubmit="return check(this);">
<p>
<label>введите ваше имя<br></label>
<input name="name" type="text" size="20" maxlength="20" onBlur="check(this.value,name)"><span id="name"></span>
</p>
<p>
<label>Введите фамилию<br></label>
<input name="surname" type="text" size="20" maxlength="20" onBlur="check(this.value,'surname')"><span id="surname"></span>
</p>
<p>
<label>Дата рождения<br>
<select name="date_d" onBlur="check(this.value,'date_d')"><span id="date_d"></span>
<option selected>День</option>
<script src="date.js"></script>
</select>
<select name="date_m" onBlur="check(this.value,'date_m')">
<option selected>Месяц</option>
<option>Январь</option>
<option>Февраль</option>
<option>Март</option>
<option>Апрель</option>
<option>Май</option>
<option>Июнь</option>
<option>Июль</option>
<option>Август</option>
<option>Сентябрь</option>
<option>Октябрь</option>
<option>Ноябрь</option>
<option>Декабрь</option>
</select >
<select name="date_y" onBlur="check(this.value,'date_y')">
<option selected>Год</option>
<script src="year.js"></script>
</select>
</label>
</p>
<p>
<label>Введите ваш Email:<br></label>
<input name="email" type="text" size="20" maxlength="20" onBlur="check(this.value,'email')"><span id="email"></span>
</p>
<p>
<label>Введите ваш пароль:<br></label>
<input name="password" type="password" size="20" maxlength="20" onBlur="check(this.value,'password')"><span id="password"></span>
</p>
<p>
<label>Повторите пароль пароль:<br></label>
<input name="passwordcontrol" type="password" size="20" maxlength="20" onBlur="check(this.value,'passwordcontrol')"><span id="passwordcontrol"></span>
</p>
<p>
<input type="submit" name="submit" value="Зарегистрироваться" onclick="reg(this.form)">
...
JavaScript
console.clear();
function check(val,title){
if(val==''){
document.getElementById(title).innerHTML='Вы не ввели данные';
}else document.getElementById(title).innerHTML='';
f(val=='День'){
document.getElementById(title).innerHTML='Вы не ввели данные';
}else document.getElementById(title).innerHTML='';
f(val=='Месяц'){
document.getElementById(title).innerHTML='Вы не ввели данные';
}else document.getElementById(title).innerHTML='';
f(val=='Год'){
document.getElementById(title).innerHTML='Вы не ввели данные';
}else document.getElementById(title).innerHTML='';
}
}
function reg (val){ <!--создаю проверку заполнености всех полей формы-->
for(i=0;i<8;i++){
if(val.elements[i].value==''){
alert ('Вы заполнили не все поля формы');
val.elements[i].focus();
return false;
}
}
if (val.password.value != val.passwordcontrol.value){<!--создаю проверку на совпадают-->
alert ('Пароли не совпвдают');
val.password.focus();
return false;
}
var emailPattern=/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Zа-яА-Я]{2,4}$/;<!--создаю проверку email-->
if (!emailPattern.test(val.email.value)){
alert('Адрес почты неверный');
val.email.focus();
return false;
}
}