欧芹复选框验证:无法正常工作

时间:2014-08-11 22:42:41

标签: forms validation checkbox parsley.js

以下是我在下面的内容,尝试使用类似答案中的位,加上来自欧芹网站的项目。没有任何反应..用户不会被警告至少必须检查一个方框。我错了吗?提前感谢您提供任何线索!

<form action="success.html" id="contact-form" data-parsley-validate>
  <label for="language">Please Choose your Language:<br>
  <input type="checkbox" class="checkbox" name="language" value="english" parsley-group="language" parsley-mincheck="1">English<br>
  <input type="checkbox" class="checkbox"  name="language" value="spanish" parsley-group="language" >Spanish<br>
  <input type="checkbox" class="checkbox"  name="language" value="french" parsley-group="language" >French 
</label> 

1 个答案:

答案 0 :(得分:2)

您的代码存在一些问题:

  1. parsley-group不存在。如果您要验证表单的一部分,则可以使用data-parsley-group并适用。
  2. parsley-mincheck="1"不存在。有一个data-parsley-mincheck="1"
  3. 假设您至少需要一种语言,但可以接受更多语言,则此代码应该可以解决问题:

    <form action="success.html" id="contact-form" data-parsley-validate>
        <label for="language">Please Choose your Language:<br>
        <input type="checkbox" class="checkbox" name="language[]" 
                value="english" required>English<br>
        <input type="checkbox" class="checkbox"  name="language[]" 
                value="spanish" required>Spanish<br>
        <input type="checkbox" class="checkbox"  name="language[]" 
                value="french" required >French</label>
        <button type="submit" id="submit-button">Submit form</button>
    </form>
    
    $(document).ready(function() {
        // bind parsley to the form
        $("#contact-form").parsley();
    
        // on form submit, validate form and, if valid, show valid in the console
        $("#contact-form").submit(function() {
            $(this).parsley("validate");
            if ($(this).parsley("isValid")) {
                console.log('valid');
            }
            event.preventDefault();
        });
    });
    

    如果您希望用户只选择一个选项,我建议您使用单选按钮。