<?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">
<fx:Declarations>
<!-- 将非可视元素(例如服务、值对象)放在此处 -->
<mx:DateFormatter id="dateFormatter" formatString="day: DD, month:MM, year:YYYY"/>
<mx:DateValidator id="dateVal" source="{inputDate}" property="text" inputFormat="mm/dd/yyyy"/>
<mx:PhoneNumberValidator id="phoneValidator" property="text" source="{inputPhone}"/>
<mx:PhoneFormatter id="phoneFormatter" formatString="(###) ###-####" validPatternChars="#-()"/>
<mx:CurrencyFormatter id="currencyFormatter" currencySymbol="$" thousandsSeparatorFrom="." decimalSeparatorFrom=","/>
<mx:NumberValidator id="numValidator" source="{inputCurrency}" property="text" />
</fx:Declarations>
<fx:Script>
<![CDATA[
import mx.events.ValidationResultEvent;
private var vResult:ValidationResultEvent;
//负责验证及格式化的事件处理器
private function dateFormat():void
{
vResult = dateVal.validate();
if(vResult.type==ValidationResultEvent.VALID)
{
inputDate.text = dateFormatter.format(inputDate.text);
}
else
{
inputDate.text="";
}
}
private function phoneFormat():void
{
vResult = phoneValidator.validate();
if(vResult.type==ValidationResultEvent.VALID)
{
inputPhone.text = phoneFormatter.format(inputPhone.text);
}
else
{
inputPhone.text="";
}
}
private function currencyFormat():void
{
vResult = numValidator.validate();
if(vResult.type==ValidationResultEvent.VALID)
{
inputCurrency.text = currencyFormatter.format(inputCurrency.text);
}
else
{
inputCurrency.text="";
}
}
]]>
</fx:Script>
<mx:Form>
<mx:FormItem label="Currency Input">
<s:TextInput id="inputCurrency" focusOut="currencyFormat()" width="300" />
</mx:FormItem>
<mx:FormItem label="Phone Number Input">
<s:TextInput id="inputPhone" focusOut="phoneFormat()" width="300"/>
</mx:FormItem>
<mx:FormItem label="Date Input">
<s:TextInput id="inputDate" focusOut="dateFormat()" width="300"/>
</mx:FormItem>
</mx:Form>
</s:Application>
在TextInput及TextArea控件上使用Validator和Formatter
最新推荐文章于 2024-01-03 15:28:21 发布