我正在使用出色的jQuery Validate插件来验证某些表单。在一个表单上,我需要确保用户填写一组字段中的至少一个。我认为我有一个很好的解决方案,并希望与大家分享。 请提出您可以想到的任何改进。
我没有找到任何内置方法来执行此操作,因此搜索并找到了Rebecca Murphey的自定义验证方法,该方法非常有帮助。
我通过三种方式对此进行了改进:
让您传递一组字段的选择器
为了让您指定必须填充多少组才能通过验证
一旦其中一个输入通过验证,就将该组中的所有输入显示为通过验证。(请参阅对尼克·克雷弗大喊大叫。)
因此,您可以说“必须至少填充与选择器Y匹配的X个输入”。
最终结果,像这样的标记:
<input class="productinfo" name="partnumber">
<input class="productinfo" name="description">
...是这样的一组规则:
// Both these inputs input will validate if
// at least 1 input with class 'productinfo' is filled
partnumber: {
require_from_group: [1,".productinfo"]
}
description: {
require_from_group: [1,".productinfo"]
}
项#3假设您.checked在成功验证后将一类错误消息添加到错误消息中。您可以按照以下说明进行操作,如此处所示。
success: function(label) {
label.html(" ").addClass("checked");
}
如同上面链接的演示中一样,我使用CSS为每个span.errorX图像提供背景,除非它具有class .checked,在这种情况下,它会得到一个选中标记图像。
MMMHUHU
饮歌长啸
湖上湖
相关分类