| 包 | mx.formatters |
| 类 | public class PhoneFormatter |
| 继承 | PhoneFormatter Formatter Object |
为美国的七位数字格式提供快捷方式。如果 areaCode 属性包含一个值,并且您使用七位数字格式字符串 (###-####),则要格式化的七位数值将自动在返回的 String 中添加地区代码。地区代码的默认格式为 (###)。您可以使用 areaCodeFormat 属性更改此格式。您可以根据需要随意设置地区代码格式,只要其中包含三个数字占位符即可。
如果出现错误,则会返回一个空 String,以及一个说明已将此错误保存到 error 属性的 String。error 属性可以是下列值之一:
"Invalid value" 表示传递给 format() 方法的数值无效。此值应该是 Number 或 String 形式的有效数字,也可能其中包含的位数与格式 String 中指定的位数不同。
"Invalid format" 表示 formatString 属性中的字符总数与 validPatternChars 属性中指定的允许字符数不匹配,或者尽管已指定 areaCodeFormat 属性,但其中包含的数字占位符不是三个。
隐藏 MXML 语法The <mx:PhoneFormatter> tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<mx:PhoneFormatter
areaCode="-1"
areaCodeFormat="(###)"
formatString="(###) ###-####"
validPatternChars="+()#-. "
/>
另请参见
| 属性 | 定义方 | ||
|---|---|---|---|
| areaCode : Object 添加到美国格式的七位电话号码中的地区代码数字,从而形成一个十位数字的电话号码。 | PhoneFormatter | ||
| areaCodeFormat : String 当 areacode 属性显示为七位数字格式时,此值是默认的地区代码格式。 | PhoneFormatter | ||
![]() | constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | |
![]() | defaultInvalidFormatError : String [静态] 为 formatter 指定的格式字符串无效时出现的错误消息。 | Formatter | |
![]() | defaultInvalidValueError : String [静态] 为 formatter 指定的值无效时出现的错误消息。 | Formatter | |
![]() | error : String 发生错误时由 formatter 保存的说明。 | Formatter | |
| formatString : String 一个字符串,其中包含代表指定电话号码格式的掩码字符。 | PhoneFormatter | ||
![]() | prototype : Object [静态]
对类或函数对象的原型对象的引用。 | Object | |
| validPatternChars : String 适用于 formatString 属性的有效字符列表。 | PhoneFormatter | ||
| 方法 | 定义方 | ||
|---|---|---|---|
构造函数。 | PhoneFormatter | ||
将 String 设置为电话号码格式。 | PhoneFormatter | ||
![]() |
指示对象是否已经定义了指定的属性。 | Object | |
![]() |
指示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | |
![]() |
指示指定的属性是否存在、是否可枚举。 | Object | |
![]() |
设置循环操作动态属性的可用性。 | Object | |
![]() |
返回指定对象的字符串表示形式。 | Object | |
![]() |
返回指定对象的原始值。 | Object | |
| areaCode | 属性 |
areaCode:Object [读写]
添加到美国格式的七位电话号码中的地区代码数字,从而形成一个十位数字的电话号码。值 -1 表示不在电话号码前添加地区代码。
默认值为 -1.
public function get areaCode():Object public function set areaCode(value:Object):void| areaCodeFormat | 属性 |
areaCodeFormat:String [读写]
当 areacode 属性显示为七位数字格式时,此值是默认的地区代码格式。
默认值为 "(###) ".
public function get areaCodeFormat():String public function set areaCodeFormat(value:String):void| formatString | 属性 |
formatString:String [读写] 一个字符串,其中包含代表指定电话号码格式的掩码字符。
默认值为 "(###) ###-####".
public function get formatString():String public function set formatString(value:String):void| validPatternChars | 属性 |
validPatternChars:String [读写]
适用于 formatString 属性的有效字符列表。在验证 formatString 属性期间会用到此属性。
默认值为 "+()#- .".
public function get validPatternChars():String public function set validPatternChars(value:String):void| PhoneFormatter | () | 构造函数 |
public function PhoneFormatter()构造函数。
| format | () | 方法 |
override public function format(value:Object):String
将 String 设置为电话号码格式。如果无法设置值的格式,则会返回一个空 String,并将对错误的描述写入 error 属性。
参数
value:Object — 要设置格式的值。 |
String —
格式化的 String。如果发生错误,则为空字符串。将有关错误条件的描述写入 error 属性。
|
<?xml version="1.0" encoding="utf-8"?>
<!-- Simple example to demonstrate PhoneFormatter. -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
<![CDATA[
import mx.events.ValidationResultEvent;
private var vResult:ValidationResultEvent;
// Event handler to validate and format input.
private function Format():void
{
vResult = pnVal.validate();
if (vResult.type==ValidationResultEvent.VALID) {
formattedPhone.text= phoneFormatter.format(phone.text);
}
else {
formattedPhone.text= "";
}
}
]]>
</mx:Script>
<mx:PhoneFormatter id="phoneFormatter"
formatString="(###) ###-####" validPatternChars="#-() "/>
<mx:PhoneNumberValidator id="pnVal" source="{phone}" property="text"
allowedFormatChars=""/>
<mx:Panel title="PhoneFormatter Example" width="75%" height="75%"
paddingTop="10" paddingLeft="10" paddingRight="10" paddingBottom="10">
<mx:Form>
<mx:FormItem label="Enter a 10-digit phone number:">
<mx:TextInput id="phone" text="" width="75%"/>
</mx:FormItem>
<mx:FormItem label="Formatted phone number: ">
<mx:TextInput id="formattedPhone" text="" width="75%" editable="false"/>
</mx:FormItem>
<mx:FormItem>
<mx:Button label="Validate and Format" click="Format();"/>
</mx:FormItem>
</mx:Form>
</mx:Panel>
</mx:Application>