Mat*_*att 56 html javascript css jquery jquery-validate
我想使用jquery validate插件验证表单,但是我无法在html中使用'name'值 - 因为这是服务器应用程序也使用的字段.具体来说,我需要限制从组中检查的复选框的数量.(最多3个.)我看过的所有例子都使用每个元素的name属性.我想要做的是改用类,然后为此声明一个规则.
HTML
这有效:
<input class="checkBox" type="checkbox" id="i0000zxthy" name="salutation" value="1" />
Run Code Online (Sandbox Code Playgroud)
这不起作用,但是我的目标是:
<input class="checkBox" type="checkbox" id="i0000zxthy" name="i0000zxthy" value="1" />
Run Code Online (Sandbox Code Playgroud)
JavaScript的:
var validator = $(".formToValidate").validate({
rules:{
"salutation":{
required:true,
},
"checkBox":{
required:true,
minlength:3 }
}
});
Run Code Online (Sandbox Code Playgroud)
是否可以这样做 - 有没有一种方法可以在规则选项中定位类而不是名称?或者我是否必须添加自定义方法?
干杯,马特
Nic*_*ver 81
您可以使用基于该选择器的规则添加规则.rules("add", options),只需从验证选项中删除您希望基于类的任何规则,并在调用$(".formToValidate").validate({... });之后执行以下操作:
$(".checkBox").rules("add", {
required:true,
minlength:3
});
Run Code Online (Sandbox Code Playgroud)
Ric*_*doS 33
另一种方法是使用addClassRules.它特定于类,而使用选择器和.rules的选项更通用.
在打电话之前
$(form).validate()
Run Code Online (Sandbox Code Playgroud)
使用这样:
jQuery.validator.addClassRules('myClassName', {
required: true /*,
other rules */
});
Run Code Online (Sandbox Code Playgroud)
参考:http://docs.jquery.com/Plugins/Validation/Validator/addClassRules#namerules
对于像这样的情况,我更喜欢这种语法.
Nim*_*mal 11
我知道这是一个老问题.但是我最近也需要相同的一个,我从stackoverflow得到了这个问题+来自这个博客的另一个答案.博客中的答案更直接,因为它专门针对这种验证.这是怎么做的.
$.validator.addClassRules("price", {
required: true,
minlength: 2
});
Run Code Online (Sandbox Code Playgroud)
此方法不要求您在此调用之上使用验证方法.
希望这也将有助于未来的人.来源于此.
小智 6
这是使用jQuery的解决方案:
$().ready(function () {
$(".formToValidate").validate();
$(".checkBox").each(function (item) {
$(this).rules("add", {
required: true,
minlength:3
});
});
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
111712 次 |
| 最近记录: |