bootstrapvalidator 密码验证 以及清除验证

   在项目中写了一个修改密码的功能,使用了bootstrapvalidator 来进行文本框的验证。

首先在修改密码的jsp页面上加载validator的css和js   路径存放可以自己选择合适的位置。 

<link rel="stylesheet" href="./static/validator/css/bootstrapValidator.css" />
<script type="text/javascript" src="./static/validator/js/bootstrapValidator.min.js"></script>
.help-block {
	color:red
}

加入上面的css样式会将验证提示颜色设置为红色。

以下是修改密码的页面代码

<div id="editpwd"   closed="true" class="easyui-window" title="修改密码"  style="width:700px;padding:5px;" >
  <center><form id="detailForm" style="height:100%; margin-top:10px;" >
 <table class="table table-bordered" style="height:200px; width:90%; margin-top:10px;">
    <tr>
	  <td class="col-sm-2" style="background-color:#3FA9D0;">
		 <div class="table-form-label" style="padding-top: 10px" align="center" >
			<label  for="old_pwd" class="control-label">旧密码</label>
		 </div>
	  </td>
	  <td>
		<div class="col-sm-5">
			<input type="password" class="form-control" id="old_pwd" name="old_pwd"/>
		 </div>
	  </td>
	</tr>
	<tr>
	   <td class="col-sm-2" style="background-color:#3FA9D0;">
		 <div class="table-form-label" style="padding-top: 10px" align="center" >
		     <label for="new_pwd" class="control-label">新密码</label>
	 	 </div>
	   </td>
	   <td>
	     <div class="col-sm-5">
			<input type="password" class="form-control" id="new_pwd" name="new_pwd" />
		 </div>
	   </td>
	</tr>
	<tr>
	   <td class="col-sm-2" style="background-color:#3FA9D0;">
		<div class="table-form-label" style="padding-top: 10px" align="center" >
		    <label for="confirm_pwd" class="control-label">确认密码</label>
		</div>
	   </td>
	   <td>
		<div class="col-sm-5">
		<input type="password" id="confirm_pwd" name="confirm_pwd" class="form-control" />	
		</div>
	   </td>
	</tr>
	<tr>
		<td colspan="2">
			<div class="col-sm-5 col-md-offset-2">
			<button class="btn btn-success fa fa-check" style="background-color:#3FA9D0" onclick="eidtpwd();">&nbsp;提交</button>&nbsp;&nbsp;&nbsp;&nbsp;
			</div>
			</td>
	</tr>
		</table>
		</form></center>
</div>

上面有旧密码、新密码、密码确认三个文本输入框,这三个需要进行前端验证才能进行提交。

因此在js中添加验证的代码。

	function validator(){
         		//输入项的验证
         		$('#detailForm').bootstrapValidator({
         	        message: '输入值不满足不满足系统要求',
         	        excluded : [':disabled'],
         	        feedbackIcons: {
         	            valid: 'glyphicon glyphicon-ok',
         	            invalid: 'glyphicon glyphicon-remove',
         	            validating: 'glyphicon glyphicon-refresh'
         	        },
         	        live: 'enabled',
         	        fields: {
         	        	old_pwd: {
         	                message: '用户旧密码不满足系统要求',
         	                validators: {
         	                     notEmpty: {
         	                              message: '用户旧密码不能为空'
         	                         },
         	                      stringLength: {
         	                           min: 8,
         	                           max: 50,
         	                           message: '用户旧密码长度不能少于8位'
         	                       },
         	                      regexp: {
         	                         regexp: /^[^ ]+$/,
         	                         message: '用户旧密码不能有空格'
         	                       }
         	                }
         	                     
         	            },
         	          
         	            new_pwd: {
         	           	message:'新密码不满足系统要求',
         	               validators: {
         	                   notEmpty: {
         	                       message: '用户新密码不能为空'
         	                 
         	                   },
         	                  regexp : {
     	    	                    regexp : /^(?:(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])|(?=.*[A-Z])(?=.*[a-z])(?=.*[^A-Za-z0-9])|(?=.*[A-Z])(?=.*[0-9])(?=.*[^A-Za-z0-9])|(?=.*[a-z])(?=.*[0-9])(?=.*[^A-Za-z0-9])).{8,16}$/,
     	    	                    message : '用户新密码长度为8至16位,并且需要包含数字、小写字母、大写字母、符号(至少三种)'
     	                 	       },
     	                 	  identical: {
     	                            field: 'comfirm_pwd',
     	                            message: '用户新密码与确认密码不一致!'
     	                          },
     	                 	  stringLength: {
       	                           min: 8,
       	                           max: 50,
       	                           message: '用户新密码长度不能少于8位'
       	                       }
         	               }
         	            
         	          },
         	          confirm_pwd: {
         	                validators: {
         	                    notEmpty: {
         	                        message: '确认密码不能为空'
         	                    },
         	                   regexp : {
    	    	                    regexp : /^(?:(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])|(?=.*[A-Z])(?=.*[a-z])(?=.*[^A-Za-z0-9])|(?=.*[A-Z])(?=.*[0-9])(?=.*[^A-Za-z0-9])|(?=.*[a-z])(?=.*[0-9])(?=.*[^A-Za-z0-9])).{8,16}$/,
    	    	                    message : '用户确认密码长度为8至16位,并且需要包含数字、小写字母、大写字母、符号(至少三种)'
    	                 	       },
    	                 	  identical: {
    	                            field: 'new_pwd',
    	                            message: '用户新密码与确认密码不一致!'
    	                          },
    	                 	  stringLength: {
      	                           min: 8,
      	                           max: 50,
      	                           message: '用户确认密码长度在8-50之间'
      	                       }
         	                }
         	            }
         	        }
         	    });
         	}

fileds是分别取文本输入框的name属性来进行验证。

以下是密码通过ajax传到后端,点击按钮时先判定是否进行了bootstrapvalidator的验证。

 function eidtpwd(){
			  	validator();
		        pwd = CryptoJS.MD5($("#new_pwd").val()).toString();  
				passWord = CryptoJS.MD5( $("#old_pwd").val()).toString();   
				var url = "modifyPwd";
				
				var param = {
					user_pwd : passWord,
					newPwd : pwd
				}
				var bootstrapValidator = $("#detailForm").data('bootstrapValidator');
				bootstrapValidator.validate();
				if(bootstrapValidator.isValid()){
					$.ajax({
						type: "POST",
						url:url,
						data: param,
						async: false,
						success: function(r){
							if(r && r.success){
								$.messager.alert('提示', "修改密码成功!");
								$('#editpwd').window('close');
							}else{
								$.messager.alert('错误',r.msg);
							}
						},
						error: function(r){
							$.messager.alert('错误', "系统故障,请稍后再试!");
						}
						
					});
				}
			}
		</script>

如果你要进行验证的清除则加下面两行代码即可

$("#detailForm").data('bootstrapValidator').destroy();
    $("#detailForm").data('bootstrapValidator',null);

 

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值