密码验证:
function checkForm() { $('#menuForm').bootstrapValidator({ //live: 'disabled', //通用提示信息 message: '必填项', trigger: 'blur', //勾叉图标 feedbackIcons: { valid: 'glyphicon glyphicon-ok', invalid: 'glyphicon glyphicon-remove', validating: 'glyphicon glyphicon-refresh' }, //验证字段 fields: { oldPassword: { validators: { notEmpty: { message: '请填写原密码' },remote :{ message: '原密码不正确', threshold :4, url: '/checkPassword.do', type :'post', data:{yuanmima:function (){//请求传递参数 return $("#oldPassword").val(); }}, delay :2000 } } }, newPassword: { validators: { notEmpty: { message: '请填写新密码' },identical: { field: 'confirmPassword', message: '两次输入的密码不相符' } } }, confirmPassword: { validators: { notEmpty: { message: '请填写确认密码' },identical: { field: 'newPassword', message: '两次输入的密码不相符' } } } } }); // Validate the form manually //给提交按钮绑定单击事件zhsihahfifhao $('#updatePasswordBtn').click(function () { //获取验证表单对象,验证 var result = $('#menuForm').data('bootstrapValidator').validate().isValid(); if (result) {//验证通过 //ajax提交 } });
---------------------------------后台返回---------------------------------------------------------------------
@ResponseBody @RequestMapping(value = "/checkPassword.do", method = RequestMethod.POST) public Map checkPassword(String yuanmima, HttpSession session) { Map<String, Boolean> map = new HashMap<String, Boolean>(); SysPolice police = (SysPolice) session.getAttribute(ResourceKeys.ADMIN_LOGIN_KEY); String password1 = MD5Utils.md5(yuanmima); if (!password1.equals(police.getPassword())) { map.put("valid", false); } else { map.put("valid", true); } return map; }
---------------------------------后台返回---------------------------------------------------------------------
验证只能是数字小数
classHour: { validators: { notEmpty: { message: '必填项!' },regexp: { regexp: /^[0-9]+([.]{1}[0-9]+){0,1}$/, message: '学时只能由数字,小数组成' } } }
身份证号码
idCard: { validators: { notEmpty: {}, regexp: { regexp: /^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)$/, message: '身份证号码格式不正确,为15位和18位身份证号码!' }, callback: { /*自定义,可以在这里与其他输入项联动校验*/ message: '身份证号码无效!', callback: function (value, validator, $field) { //15位和18位身份证号码的正则表达式 var regIdCard = /^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)$/; //如果通过该验证,说明身份证格式正确,但准确性还需计算 var idCard = value; if (regIdCard.test(idCard)) { if (idCard.length == 18) { var idCardWi = new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2); //将前17位加权因子保存在数组里 var idCardY = new Array(1, 0, 10, 9, 8, 7, 6, 5, 4, 3, 2); //这是除以11后,可能产生的11位余数、验证码,也保存成数组 var idCardWiSum = 0; //用来保存前17位各自乖以加权因子后的总和 for (var i = 0; i < 17; i++) { idCardWiSum += idCard.substring(i, i + 1) * idCardWi[i]; } var idCardMod = idCardWiSum % 11;//计算出校验码所在数组的位置 var idCardLast = idCard.substring(17);//得到最后一位身份证号码 //如果等于2,则说明校验码是10,身份证号码最后一位应该是X if (idCardMod == 2) { if (idCardLast == "X" || idCardLast == "x") { return true; //alert("恭喜通过验证啦!"); } else { return false; //alert("身份证号码错误!"); } } else { //用计算出的验证码与最后一位身份证号码匹配,如果一致,说明通过,否则是无效的身份证号码 if (idCardLast == idCardY[idCardMod]) { //alert("恭喜通过验证啦!"); return true; } else { return false; //alert("身份证号码错误!"); } } } } else { //alert("身份证格式不正确!"); return false; } } } } }
日期
birthday: { validators: { notEmpty: { message: '请填写出生日期!' }, date: { format: 'YYYY/MM/DD', message: '出生日期格式错误' } } }
长度
stringLength: { min: 10, max: 12, message: '注意长度!' }
扫描二维码关注公众号,回复:
4586645 查看本文章