jQuery验证控件jquery.validate.js使用说明+中文API

 这是详细博文地址:http://www.cnblogs.com/hejunrex/archive/2011/11/17/2252193.html

 其实用起来并不难,但是有一点需要注意:表单中的<input>标签取id和name的时候要留心。

 一般我们都会将id和name的名字命名为相同。这是细节和习惯问题。我想要提的是,在使用validate表单验证控件中,你对input设置规则的时候,有一种方式是采用在js下编写rule。如下:

$().ready(function() {
 $("#signupForm").validate({
        rules: {
        firstname: "required",        email: {            required: true,           email: true
        },       password: {           required: true,           minlength: 5
        },       confirm_password: {           required: true,           minlength: 5,           equalTo: "#password"       }     }, messages: {       firstname: "请输入姓名",       email: {           required: "请输入Email地址",           email: "请输入正确的email地址"        },        password: {           required: "请输入密码",           minlength: jQuery.format("密码不能小于{0}个字 符")       },       confirm_password: {           required: "请输入确认密码",           minlength: "确认密码不能小于5个字符",           equalTo: "两次输入密码不一致不一致"       }   } }); });

 其中firstname、email、password、confirm_password就是<input>标签中的name属性值。应该是该插件的一个bug,当name属性值为first-name这种形式,即带有连字符时,控件会失效=.=,但如果是下划线则是没有问题的。~~因为我有带连字符命名的习惯,然后,然后。。。。就是n久的调试才发现控件失效的真正原因。

 不过,还是很感谢开源代码^_^。

 个人觉得,这个控件有一个很好的地方——在email验证中,根据我用的测试用例,我发现控件所采用的验证规则是:将email地址分成三部分(其实就是正则表达式的应用),part1@part2.part3。其中"@"自然是少不了,part1部分要求是合法的字符(数字、字母、连字符等等)part1的验证功能很好;part3部分必须是".com",当然这是毫无疑问正确的。而一个好的地方就在于part2的验证中,作者没有强制要求一个字段,允许小圆点的存在“.”。可能有人要说,截止到目测过的邮箱都是这样的——"@126.com"、"@139.com"......应该对于类似"@pop.126.com"的邮箱直接验证不通过嘛。嘿嘿,起初我也是这么想的,但是为了防止我的片面臆断,特意baidu+google了下,发现其实事情并非如此。"@"字符后面是服务器的端口号:IMAP服务器:imap.126.com   SMTP服务器:smtp.126.com。所以在part2部分出现小圆点"."你还真心不能简单报个错就了事了。更何况,人家都到注册账号这一步了,我们多想ta加入我们这个大家庭呀。所以,作为代码创造者,我们应该尽可能为来访者提供尽可能的方便^_^。

 

原文地址:https://www.cnblogs.com/Iwillknow/p/3446507.html