如何使用jquery.validate.min.js验证数组类型中具有名称的输入字段
我有如何使用jquery.validate.min.js验证数组类型中具有名称的输入字段,jquery,input,jquery-validate,Jquery,Input,Jquery Validate,我有input标记字段,它在array 例如 <div class="form-group"> <label class="col-sm-2 control-label"> <span style="color: red;">*</span> Title</label> <div class="col-sm-8 general-title tooltip-demo"> <
input
标记字段,它在array
例如
<div class="form-group">
<label class="col-sm-2 control-label">
<span style="color: red;">*</span>
Title</label>
<div class="col-sm-8 general-title tooltip-demo">
<input type="text" name="form[1][title]" id="title" value="" size="64" class="form-control" data-toggle="tooltip" data-placement="top" data-html="true" title="" required="required" data-original-title="Enter Notification Title"> </div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">
<span style="color: red;">*</span>
Title 2</label>
<div class="col-sm-8 general-title tooltip-demo">
<input type="text" name="form[2][title]" id="title" value="" size="64" class="form-control" data-toggle="tooltip" data-placement="top" data-html="true" title="" required="required" data-original-title="Enter Notification Title"> </div>
</div>
但我不想将每个验证规则分开,因为我有30个不同的字段,所以我不想编写30*2
规则
如果有人知道简单的方法,请建议我
提前感谢您可以在将规则传递到验证函数之前创建规则-
var rules = {};
$('input[name^=form]:text').each(function() {
rules[this.name] = { required: true };
});
$(document).ready(function() {
$("#frmforgot").validate({
rules: rules
});
});
您可以使用为批量字段分配任何规则
就这么简单
$(document).ready(function() {
$("#frmforgot").validate();
$('input[name^="form"]').each(function() {
$(this).rules('add', {
required: true
});
});
});
在您的情况下,命名是否使用数组格式并不重要。输入[name^=“form”]
选择器正在查找任何带有名称的输入
,该名称以字母表单
开头
演示:
这是一个没有实际意义的问题,因为您在这些输入元素上已经required=“required”
,所以您不需要再次分配此规则。jQuery验证插件只需使用任何HTML5属性自动分配相应的规则
演示2:如果我有电子邮件字段和必需的电子邮件验证,该怎么办。同样在你的回答“input[name^=form]”中,它不是数组格式,所以我认为它不起作用。为什么它是数组格式?规则是一个对象,即使在您的示例中也是如此。如果您有其他要求,请更新问题。name
是我要求的数组格式,我还提到了name
属性是数组格式。此外,我的代码显示具有相同的“表单[2][title]”。我想你没有看到密码
$(document).ready(function() {
$("#frmforgot").validate();
$('input[name^="form"]').each(function() {
$(this).rules('add', {
required: true
});
});
});