function testPassword (opass,npass,cpass,callback){
/*
opass:原密码
npass:新密码
cpass:确认新密码
callback:校验成功后的回调
校验规则:
1.非空校验
2.原密码准确性校验
3.重复新校验:新密码不能与原密码相同
4.准确新校验:新密码与确认新密码一致
5:密码不少于8位,支持数字、字母、特殊字符;至少有两个字母,字母区分大小写,至少有2个非字
母,不能有空格,大括号
*/
if(opass == ""){
mui.alert('原密码为空,请输入','',null);//mui弹框
return;
}else{
var correctpass = JSON.parse(localStroge.getItem("ui")).password
if(correctpass != opass){
mui.alert("原密码错误,请从新输入",'',null);
}
return;
}
if(npass == ''){
mui.alert('新密码为空,请输入','',null);
return;
}else{
var result = [];
if(npass.length<8){
result.push('长度不能小于8位')
}
if(/\s+/.test(npass)){
result.push('不能有空格')
}
if(/{/.test(npass)||/}/.test(npass)){
result.push('不能有大括号');
}
var char = npass.match(/[A-Za-z]{1,}/g)?npass.match(/[A-Za-z]{1,}/g).join(""):[];
if(char.length<2){
result.push('至少有两个字母')
}
if(npass.length-char.length<2){
result.push('至少有两个非字母');
}
if(result.length){
var promptmessage = "新密码"+result.join(',');
mui.alert(promptmessage,'',null)
return;
}
}
if(cpass == ''){
mui.alert('确认密码为空,请输入','',null)
return;
}
if(opass == npass){
mui.alert('新密码不能与原密码相同','',null)
return;
}
if(cpass != npass){
mui.alert('确认密码与新密码不一致','',null)
return;
}
callback();
}