У меня возникли проблемы с проверкой моего раскрывающегося списка с помощью javascript. Я хочу отобразить сообщение об ошибке под полем внутри тегов span, если пользователь не выбрал никаких параметров. Я проверил почти все учебники, но не повезло.Подтвердить выбор выпадающего списка с помощью javascript
Вот код формы:
<form name="subform" id="subform" action="submit.php" onsubmit="return checkForBlank()" method="POST" enctype="multipart/form-data">
<div class="md-form">
<input type="text" id="subcim" name="subcim" class="form-control"><span class="error_form" id="subcim_error_message"></span>
<label for="subcim" class="">Title</label><br>
</div>
<div class="md-form">
<select class="mdb-select" id="subcat" name="subcat"><span class="error_form" id="subcat_error_message"></span>
<option value="0" selected>Please select an option</option>
<option value="option1">Option 1</option>
<option value="option2">Option 2</option>
</select>
<label id="subcat_info">Category</label><br>
</div>
<button type="submit" class="btn btn-primary btn-lg btn-block">Submit</button>
</form>
и вот код Javascript (первый, если оператор проверяет поле ввода в форме:
function checkForBlank() {
if(document.getElementById("subcim").value == "") {
document.getElementById("subcim_error_message").textContent="You must add a title!";
return false;
} else if(document.getElementById("subcim").value.length < 5 || document.getElementById("subcim").value.length > 80) {
document.getElementById("subcim_error_message").textContent="The title must be between 5 and 80 characters!";
return false;
}
var result = document.getElementById('subcat').value;
if (result === "0") {
document.getElementById("subcat_error_message").textContent="You must select an option!";
return false;
}
}
Я использую
onsubmit="return checkForBlank()"
внутри тега формы.
Когда я отправляю форму без выбора опции, форма представляется правильно, но она не отображает сообщение об ошибке.
Любая помощь приветствуется
Попробуйте положить пустое предупреждение, чтобы проверить погоду ваша функция вызывается или нет? А также, если возможно, измените 'textContent' на' innerHTML'. И, пожалуйста, укажите весь код для формы, например, когда вы положили кнопку отправки, а также как вы также добавили событие onsubmit. –
Добавлен весь код. Я проверил его только с предупреждением. Если я заменю этот document.getElementById ("subcat_error_message"). TextContent = "Вы должны выбрать вариант!"; с предупреждением срабатывает предупреждение. ВнутреннийHTML не имеет никакого эффекта. – PapT
Я просто понял, что место, где вы положили свой пролет, ошибочно. Вы не можете поместить свой диапазон в свой тег select. Он должен быть вне вашего тега select. Просто сделайте так много изменений, и ваш код будет работать нормально. –