开发环境
1、django+python
2、需用到jquery validate.js组件
代码实现
$( '#userForm' ).validate({
rules:{
truename:{
required:true,
minlength:2,
maxlength:6,
},
email:{
required:true,
email:true,
},
province:{
required:true,
},
city:{
required:true,
},
area:{
required:true,
},
},
messages:{
truename:{
required:'请输入您的姓名',
minlength:'姓名项只允许2~6个字符',
maxlength:'姓名项只允许2~6个字符',
isChar:'请正确格式的姓名(暂支持汉字)',
},
email:{
required:'请输入邮箱地址',
email:'请检查您输入的邮箱',
},
province:{
required:'请选择您所在的省'
},
city:{
required:'请选择您所在的市'
},
area:{
required:'请选择您所在的区'
},
},
});
自定义调用函数:
// JavaScript Document
//检测手机号是否正确
jQuery.validator.addMethod("<strong>isMobile</strong>", function(value, element) {
var length = value.length;
var regPhone = /^1([3578]\d|4[57])\d{8}$/;
return this.optional(element) || ( length == 11 && regPhone.test( value ) );
}, "请正确填写您的手机号码");
//检测用户姓名是否为汉字
jQuery.validator.addMethod("<span style="color:#FF0000;"><strong>isChar</strong></span>", function(value, element) {
var length = value.length;
var regName = /[^\u4e00-\u9fa5]/g;
return this.optional(element) || !regName.test( value );
}, "请正确格式的姓名(暂支持汉字)");
//检测邮政编码
jQuery.validator.addMethod("<strong>isZipCode</strong>", function(value, element) {
var tel = /^[0-9]{6}$/;
return this.optional(element) || (tel.test(value));
}, "请正确填写您的邮政编码");
总结:
焦点事件验证比较方便快捷,可直接通过修改NAME和REQUIRE来修改需求。