Я видел несколько примеров в Flex для валидатора passowrd, использующего RegExp. Но везде, где валидация происходит за одну валидацию.
У меня есть требование, например, проверка пароля, например
• Как минимум одна заглавная буква
• хотя бы один числовой символ
• Как минимум один специальный символ, такой как @, #, $ и т. Д.
• хотя бы одна строчная буква
• длина пароля минимум 6 цифр
• пароль не может совпадать с именем пользователя
Может кто-нибудь дать мне код для этого ..? У меня есть код только для проверки, пароль действителен или нет. проверьте код ниже.
MXML-код
<mx:FormItem label="Username:" x="83" y="96" width="66">
</mx:FormItem>
<mx:FormItem label="Password:" x="88" y="123" width="61">
</mx:FormItem>
<mx:Button label="Login" id="btnLogin" tabIndex="2" click="login();" enabled="{formIsValid}" x="327" y="162" width="84"/>
<mx:TextInput id="txtPassword" displayAsPassword="true" change="validateForm(event);" x="152" y="121" width="217"/>
<mx:TextInput id="txtUserId" change="validateForm(event);" x="152" y="94" width="217"/>
AS код:
private function validateForm(event:Event):void
{
focussedFormControl = event.target as DisplayObject;
formIsValid = true;
formIsEmpty = (txtUserId.text == "" && txtPassword.text == "");
validate(strVUserId);
validate(strVPassword);
}
private function validate(validator:Validator):Boolean
{
var validatorSource:DisplayObject = validator.source as DisplayObject;
var suppressEvents:Boolean = (validatorSource != focussedFormControl);
var event:ValidationResultEvent = validator.validate(null, suppressEvents);
var currentControlIsValid:Boolean = (event.type == ValidationResultEvent.VALID);
formIsValid = formIsValid && currentControlIsValid;
return currentControlIsValid;
}