当前位置 博文首页 > flex中validateall()方法实现多Item验证且结果统一提示

    flex中validateall()方法实现多Item验证且结果统一提示

    作者:admin 时间:2021-08-31 18:55

    复制代码 代码如下:

    <?xml version="1.0" encoding="utf-8"?>
    <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
    xmlns:s="library://ns.adobe.com/flex/spark"
    xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"
    creationComplete="initHandler(event)">
    <fx:Script>
    <![CDATA[
    import mx.controls.Alert;
    import mx.events.FlexEvent;
    import mx.events.ValidationResultEvent;
    import mx.validators.Validator;

    private var error1:String;

    private var error2:String;

    private var error3:String;

    protected function initHandler(event:FlexEvent):void
    {

    }


    protected function btn_clickHandler(event:MouseEvent):void
    {
    // TODO Auto-generated method stub
    var validateArray:Array=Validator.validateAll(
    [NAMEValidator,AGEValidator,PHONEValidator]);
    if(validateArray.length==0)
    {
    Alert.show("成功啦!");
    }else
    {
    Alert.show(error1+"\n"+error2+"\n"+error3);
    }
    }

    protected function NAMEValidator_invalidHandler(event:ValidationResultEvent):void
    {
    error1 =event.message;
    }

    protected function AGEValidator_invalidHandler(event:ValidationResultEvent):void
    {
    error2 =event.message;
    }

    protected function PHONEValidator_invalidHandler(event:ValidationResultEvent):void
    {
    error3 =event.message;
    }

    ]]>
    </fx:Script>
    <fx:Declarations>
    <mx:StringValidator
    source="{username}"
    property="text"
    minLength="6" maxLength="16"
    tooLongError="不能多于16个字符" tooShortError="不能低于六位"
    required="true"
    inval
    />
    <mx:NumberValidator source="{age}"
    domain="int" allowNegative="false" maxValue="60" minValue="18"
    required="true" property="text"
    exceedsMaxError="不能大于60" lowerThanMinError="不能低于十八"
    inval
    />
    <mx:PhoneNumberValidator
    minDigits="11" property="text"
    source="{phone}"
    required="true"
    inval/>
    </fx:Declarations>
    <mx:Panel>
    <mx:Form>
    <mx:FormItem label="name">
    <mx:TextInput />
    </mx:FormItem>
    <mx:FormItem label="age">
    <mx:TextInput />
    </mx:FormItem>
    <mx:FormItem label="phone">
    <mx:TextInput />
    </mx:FormItem>
    <mx:FormItem>
    <mx:Button label="验证" click="btn_clickHandler(event)"/>
    </mx:FormItem>
    </mx:Form>
    </mx:Panel>
    </s:Application>
    jsjbwy
下一篇:没有了