Javascript 当添加jQuery验证方法时,this.optional(元素)做什么?
请参阅文档:Javascript 当添加jQuery验证方法时,this.optional(元素)做什么?,javascript,jquery,html,forms,validation,Javascript,Jquery,Html,Forms,Validation,请参阅文档: 我想知道这个可选(元素)有什么作用。我创建了两个表单进行测试: 和-一个带此。可选(元素),另一个不带它。从理论上讲,根据安德鲁·惠特克的一些评论: 所有的this.optional都是说“如果该字段是可选的,那么如果为空则返回true” 及 this.optional检查基本上是在评估字段是否符合规则之前检查字段是否为空 但在行动上,我看不出在方式和工作上有什么不同。请帮助我理解操作上的差异。此。可选的用于通用验证方法,可能与必需的或可选的元素一起使用。如果字段未填写,则允许他
我想知道
这个可选(元素)
有什么作用。我创建了两个表单进行测试:和-一个带
此。可选(元素)
,另一个不带它。从理论上讲,根据安德鲁·惠特克的一些评论:
所有的this.optional
都是说“如果该字段是可选的,那么如果为空则返回true”
及
this.optional
检查基本上是在评估字段是否符合规则之前检查字段是否为空
但在行动上,我看不出在方式和工作上有什么不同。请帮助我理解操作上的差异。
此。可选的
用于通用验证方法,可能与必需的或可选的元素一起使用。如果字段未填写,则允许他们跳过自己的所有检查。如果该字段为可选且为空,则调用this.optional
的方法将立即成功返回
通过使用此方法,该方法可以假定该值为非空,这可以简化其其余的编码。好的。。。因此,在您的示例中,字段在两种形式中都不会为空。它有一个占位符值,或者试图访问电子邮件地址。
this.optional(element)
的要点是,如果元素为空且不是必需的,则立即返回true
如果你有这两种方法:
jQuery.validator.addMethod("BOB", function (value, element) {
return this.optional(element) ||
element.value === 'BOB';
}, 'You did not enter BOB');
jQuery.validator.addMethod("mustbeBOB", function (value, element) {
return element.value === 'BOB';
}, 'You did not enter BOB');
添加
BOB required
类与输入mustbeBOB
类相同。与允许空白或“BOB”的BOB
类相比,与只通过值为BOB
的验证的mustbeBOB
类相比,blank将失败。这更有意义吗?有帮助的例子!这意味着如果字段是必需的或具有默认值,那么使用this.optional(element)
就没有意义了,对吗?Form1和Form2不再可见。有其他链接吗?@accord_-guy:编辑了这个问题。