[英]How to disable a button until all the input fields are filled using only JavaScript?
I am creating a quiz game, but I only want the user to be able to submit if all of the input fields are filled out using only JavaScript.我正在创建一个问答游戏,但我只希望用户能够提交所有输入字段是否仅使用 JavaScript 填写。 I saw other similar questions on StackOverflow that used jquery, but I want to only use JavaScript.我在 StackOverflow 上看到了使用 jquery 的其他类似问题,但我只想使用 JavaScript。
html (Django template) html(Django 模板)
{% for q in quiz_questions %}
<h3 class="quiz_questions">{{q.1}}
<input type="text" id="id_question{{q.0}}" class="input">
</h3>
<div id="div{{ q.0 }}"></div>
<br>
<br>
{% endfor %}
<input type="submit" value="Submit" class="button quiz_button"
id="{{ quiz.id }}" disabled="true">
current JavaScript当前 JavaScript
document.addEventListener('DOMContentLoaded', function(){
enableChecking();
})
function enableChecking(){
button = document.getElementsByClassName("quiz_button");
if (document.getElementsByClassName("input").value === "") {
button.disabled = true;
} else {
button.disabled = false;
}
}
If you have a <form>
wrapped around everything (which is very simple to do if you don't), add required
to all of the <input>
that'll prevent the <form>
from being submitted should there be any blank <input>
s.如果你有一个<form>
包裹着所有东西(如果你没有,这很简单),添加required
到所有<input>
这将阻止<form>
如果有任何空白<input>
s。
input { display: block; }
<form> <input required value='XXXXXXXXXXX'> <input required value='XXXXXXXXXXX'> <input required value='XXXXXXXXXXX'> <input required value='XXXXXXXXXXX'> <input required value='XXXXXXXXXXX'> <input required value='XXXXXXXXXXX'> <input required> <button>Submit</button> </form>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.