实现1:
*************************************************
Ext.apply(Ext.form.VTypes, {
confirmPwd : function(val, field) {
if (field.confirmPwd) {
var firstPwdId = field.confirmPwd.first;
var secondPwdId = field.confirmPwd.second;
this.firstField = Ext.getCmp(firstPwdId);
this.secondField = Ext.getCmp(secondPwdId);
var firstPwd = this.firstField.getValue();
var secondPwd = this.secondField.getValue();
if (firstPwd == secondPwd) {
return true;
} else {
return false;
}
}
},
confirmPwdText : '两次输入的密码不一致!'
});
================================================
{
id : 'password',
name : 'password',
width : 140,
fieldLabel : '<font color="red">密 码</font>',
// confirmPwd : {
// first : 'password',
// second : 'confirmPassword'
// },
// inputType : 'password',
// vtype : 'confirmPwd',
allowBlank : false,
blankText : '密码不能为空',
regex : /^[\s\S]{0,20}$/,
regexText : '密码长度不能超过20个字符'
}, {
id : 'confirmPassword',
name : 'confirmPassword',
width : 140,
fieldLabel : '<font color="red">确认密码</font>',
confirmPwd : {
first : 'password',
second : 'confirmPassword'
},
// inputType : 'password',
vtype : 'confirmPwd',
allowBlank : false,
blankText : '确认密码不能为空',
regex : /^[\s\S]{0,20}$/,
regexText : '确认密码长度不能超过20个字符'
}
-----------------------------------------------------------------------------------------------------
实现2:
*************************************************
Ext.apply(Ext.form.VTypes, {
password : function(val, field) {
if (field.initialPassField) {
var pwd = Ext.getCmp(field.initialPassField);
return (val == pwd.getValue());
}
return true;
},
passwordText : '两次输入的密码不一致!'
});
=================================================
{
id : 'newPwd',
name : 'newPwd',
width : 140,
inputType : 'password',
fieldLabel : '<font color="red">新 密 码</font>',
allowBlank : false,
blankText : '新密码不能为空',
regex : /^[\s\S]{0,12}$/,
regexText : '新密码长度不能超过12个字符'
}, {
name : 'confirmPwd',
width : 140,
inputType : 'password',
fieldLabel : '<font color="red">确认密码</font>',
vtype : 'password',
initialPassField : 'newPwd',
allowBlank : false,
blankText : '确认密码不能为空',
regex : /^[\s\S]{0,12}$/,
regexText : '旧密码长度不能超过12个字符'
}
本文介绍两种使用ExtJS框架实现密码一致性验证的方法。一种是通过自定义验证类型confirmPwd来确保两个密码输入框的一致性;另一种是通过password验证类型来完成相同的功能。这两种方法都包括了密码输入框的基本配置如不允许为空、最大长度限制等。
1510

被折叠的 条评论
为什么被折叠?



