首页 > 解决方案 > 至少需要一个带有 Parsley 的复选框

问题描述

我需要强制用户使用欧芹检查至少一个具有不同名称的复选框。

它具有相同的名称:

<label for="hobbies">Hobbies:</label>
<p>
    Skiing <input name="hobbies[]" id="hobby1" value="ski" data-parsley-required type="checkbox"><br>
    Running <input name="hobbies[]" id="hobby2" value="run" type="checkbox"><br>
    Eating <input name="hobbies[]" id="hobby3" value="eat" type="checkbox"><br>
    Sleeping <input name="hobbies[]" id="hobby4" value="sleep" type="checkbox"><br>
    Reading <input name="hobbies[]" id="hobby5" value="read" type="checkbox"><br>
    Coding <input name="hobbies[]" id="hobby6" value="code" type="checkbox"><br>
</p>

但是使用不同的名称它不会:

<label for="hobbies">Hobbies :</label>
<p>
    Skiing <input name="hobbies1" id="hobby1" value="ski" data-parsley-required type="checkbox"><br>
    Running <input name="hobbies2" id="hobby2" value="run" type="checkbox"><br>
    Eating <input name="hobbies3" id="hobby3" value="eat" type="checkbox"><br>
    Sleeping <input name="hobbies4" id="hobby4" value="sleep" type="checkbox"><br>
    Reading <input name="hobbies5" id="hobby5" value="read" type="checkbox"><br>
    Coding <input name="hobbies6" id="hobby6" value="code" type="checkbox"><br>
</p>

有没有办法用 data-parsley-group 或其他东西来管理这个?

注意:输入列表可能很长

标签: parsley.js

解决方案


我认为您可以通过赋予它们相同的data-parsley-multiple值来使它们相关联。

其他可能性是编写一个自定义验证器,像这样


推荐阅读