前台使用的jQuery 的validate插件,表单验证.
1. 下面就是表单验证的代码:
<script src="//code.jquery.com/jquery-1.11.3.min.js"></script>
<script src='http://ajax.aspnetcdn.com/ajax/jquery.validate/1.14.0/jquery.validate.js' type="text/javascript" ></script>
<%= form_for :user,url:users_path,:html=>{:id=>"form"} do |f| %>
<div>用户名<%= f.text_field:name %></div>
<div>密码 <%= f.password_field:password %></div>
<div>邮箱 <%= f.text_field:mail %></div>
<%=f.submit "signup"%>
<% end %>
<style>
input.error { border: 1px solid red; }
label.error {
background:url("./demo/images/unchecked.gif") no-repeat 0px 0px;
padding-left: 16px;
padding-bottom: 2px;
font-weight: bold;
color: #EA5200;
}
label.checked {
background:url("./demo/images/checked.gif") no-repeat 0px 0px;
}
</style>
<script>
$("#form").validate({
rules:{
"user[name]":"required",
"user[password]":{
"required":true,
"rangelength":[6,10]
},
"user[mail]":"email"
},
messages:{
"user[name]":"请输入用户名",
"user[password]":{
"required":"请输入密码",
"rangelength":"密码在6-10位"
},
"user[mail]":"请注意邮箱格式"
}
});
</script>
1)可以把jQuery validate文件下载到本地,然后再HTML中引用
<script src='../jquery.js' type="text/javascript"/>
<script src='../jquery.validate.js' type="text/javascript"/>
2)直接在HTML中引用CDN
<script src="//code.jquery.com/jquery-1.11.3.min.js"></script>
<script src='http://ajax.aspnetcdn.com/ajax/jquery.validate/1.14.0/jquery.validate.js' type="text/javascript"/>
添加自定义验证规则
写在additional-methods.js文件中(没有就自己创建并引用)或 jquery.validate.js文件中。
addMethod:name, method, message
// 邮政编码验证
jQuery.validator.addMethod("isZipCode", function(value, element) {
var tel = /^[0-9]{6}$/;
return this.optional(element) || (tel.test(value));
}, "请正确填写您的邮政编码");
默认检验规则
序号 | 规则 | 描述 |
---|---|---|
1 | required:true | 必须输入的字段。 |
2 | remote:"check.php" | 使用 ajax 方法调用 check.php 验证输入值。 |
3 | email:true | 必须输入正确格式的电子邮件。 |
4 | url:true | 必须输入正确格式的网址。 |
5 | date:true | 必须输入正确格式的日期。日期校验 ie6 出错,慎用。 |
6 | dateISO:true | 必须输入正确格式的日期(ISO),例如:2009-06-23,1998/01/22。只验证格式,不验证有效性。 |
7 | number:true | 必须输入合法的数字(负数,小数)。 |
8 | digits:true | 必须输入整数。 |
9 | creditcard: | 必须输入合法的信用卡号。 |
10 | equalTo:"#field" | 输入值必须和 #field 相同。 |
11 | accept: | 输入拥有合法后缀名的字符串(上传文件的后缀)。 |
12 | maxlength:5 | 输入长度最多是 5 的字符串(汉字算一个字符)。 |
13 | minlength:10 | 输入长度最小是 10 的字符串(汉字算一个字符)。 |
14 | rangelength:[5,10] | 输入长度必须介于 5 和 10 之间的字符串(汉字算一个字符)。 |
15 | range:[5,10] | 输入值必须介于 5 和 10 之间。 |
16 | max:5 | 输入值不能大于 5。 |
17 | min:10 | 输入值不能小于 10。 |
具体请参考:
http://js.siwei.tech/web_front_end/js_components/validation.html