Flex Validator的小BUG

系统 1633 0

Flex中对同一控件如TextInput进行多种格式校验的情况下,如不注意,可能导致错误信息不显示的BUG,比如

      
        <
      
      
        fx:Array 
      
      
        id
      
      
        ="validators"
      
      
        >
        
  < mx:RegExpValidator source ="{txtNewPass}" property ="text" required ="true" requiredFieldError ="请输入新密码"
    expression ="^(?:(?=.*[a-zA-Z])(?=.*[0-9])).\{8,\}$" noMatchError ="密码长度不少于8位,至少包含数字和字母" />   < cn:CompareValidator source ="{txtNewPass}" property ="text" required ="false"
    comparer ="{txtOldPass.text}" comparable ="true" compareError ="新密码与原密码相同" />
</
fx:Array >

这种情况下会发现txtNewPass这个TextInput的错误提示无法显示,我试了很久,发现原因在于  required="true" requiredFieldError="请输入新密码" ,必须放在最后一个校验器中,而 前面的必须设置required="false" ,很奇怪,算是一个小BUG了,正确写法:

      
        <
      
      
        fx:Array 
      
      
        id
      
      
        ="validators"
      
      
        >
      
      
  < mx:RegExpValidator source ="{txtNewPass}" property ="text"  required ="false"
    expression ="^(?:(?=.*[a-zA-Z])(?=.*[0-9])).\{8,\}$" noMatchError ="密码长度不少于8位,至少包含数字和字母" /> < cn:CompareValidator source ="{txtNewPass}" property ="text" required ="true" requiredFieldError ="请输入新密码"
    comparer
="{txtOldPass.text}" comparable ="true" compareError ="新密码与原密码相同" />
</
fx:Array >

 

Flex Validator的小BUG


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论