パスワード フィールドを検証するために、これら 2 つのコード ブロックを使用しています。確認フィールドのパスワードが最初のフィールドと等しくない場合、テキストボックスは赤色でマークされるため、ユーザーはパスワードが等しくないことがわかります。
今、私が達成したいこと:パスワードが等しくないときはいつでもフォームのナビゲーションボタンを無効にしたい. clientvalidation イベントを試してみましたが、これはフォームを送信した場合にのみトリガーされます (私は行っていません)。
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 : 'Enter 2 times the same password!'
});
例:
access.push({
fieldLabel: 'Password',
anchor: '99%',
name: 'passwd',
id: 'passwd',
inputType: 'password',
maxLength: 40,
vtype: 'password'
});
access.push({
fieldLabel: 'Password again',
name: 'passwd1',
id: 'passwd1',
maxLength: 40,
inputType: 'password',
vtype: 'password',
initialPassField: 'passwd'
});