Я новичок в JavaScript.Как сделать все поля ввода обязательными перед отправкой формы?
Так что я пытаюсь использовать чистый JavaScript для проверки правильности ввода полей формы. Проблема в том, что я использую span для создания «* Required» в правой части ввода, но только одно имя появляется при имени.
Я хочу, чтобы оба поля имели диапазон «* Обязательный», отображаются для обоих входов, когда они пусты, когда форма отправлена. Также, когда только один пуст, сделайте только один «* Обязательный».
Я ценю любые отзывы и советы, которые вы, ребята, можете мне дать.
<!DOCTYPE html>
<html>
<title></title>
<head>
</head>
<body>
<form id = fourm>
<label>First Name:</label><br>
<input id="id1" type="text" name="firstname"><span id="demo" style="color:red"></span><br>
<label>Last Name:</label><br>
<input id="id2" type="text" name ="lastname"><span id="dema" style="color:red"></span><br>
<br><button onclick="myFunction()">Submit</button>
</form>
</body>
</html>
<script>
function myFunction() {
if (!document.getElementById("id1").value) {
document.getElementById("demo").innerHTML = "*Required";
document.getElementById("fourm").addEventListener("click", function(event){
event.preventDefault() });
} else if (document.getElementById("id1").value){
document.getElementById("demo").innerHTML = "";
return fourm;
}
}
function myFunction() {
if (!document.getElementById("id2").value) {
document.getElementById("dema").innerHTML = "*Required";
document.getElementById("fourm").addEventListener("click", function(event){
event.preventDefault() });
} else if (document.getElementById("id2").value){
document.getElementById("dema").innerHTML = "";
return fourm;
}
}
</script>
метка вашего второго вход имеет идентификационную опечатку 'dema' вместо' demo' – Carlton
Ах да, есть два пролеты с отдельными идентификаторами. Должен ли я использовать только один? –
У вас не должно быть дублированных идентификаторов, дайте ярлыкам класс, например. 'input-label' и получить все элементы с соответствующим классом, например. 'var elements = document.getElementsByClassName (" input-label ");' – Carlton