禁用按钮,直到完成所有必填字段

Disable button until all required fields are completed

本文关键字:字段 按钮      更新时间:2023-09-26

我有一个包含95个表单字段的表单,其中一些是必填字段,另一些是可选字段。我想禁用提交按钮,直到所有必填字段都完成为止。

有很多解决方案,但我正在寻找一个可以扫描输入中所需标志的解决方案,因为如果我能帮助的话,我真的不想列出所有95个字段

这在jQuery或其他方面可能吗?

非常感谢,

John

(function() {
    $('form > input').keyup(function() {
        var empty = false;
        $('form > input[required]').each(function() {
            if ($(this).val() == '') {
                empty = true;
            }
        });
        if (empty) {
            $('#register').attr('disabled', 'disabled');
        } else {
            $('#register').removeAttr('disabled');
        }
    });
})()
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.2.3/jquery.min.js"></script>
<form>
    Username<br />
    <input type="text" id="user_input" name="username" required /><br />
    Password<br />
    <input type="password" id="pass_input" name="password" required /><br />
    Confirm Password<br />
    <input type="password" id="v_pass_input" name="v_password" required /><br />
    Email<br />
    <input type="text" id="email" name="email" required/><br /> 
  name<br>
  <input type="text" id="name" name="name"/> optional<br />     
    <input type="submit" id="register" value="Register" disabled="disabled" />
  
</form>
<div id="test">
</div>