mx.formatters
public class PhoneFormatter
继承PhoneFormatter Inheritance Formatter Inheritance Object

PhoneFormatter 类将有效数字设置为电话号码格式,包括国际电话号码。

为美国的七位数字格式提供快捷方式。如果 areaCode 属性包含一个值,并且您使用七位数字格式字符串 (###-####),则要格式化的七位数值将自动在返回的 String 中添加地区代码。地区代码的默认格式为 (###)。您可以使用 areaCodeFormat 属性更改此格式。您可以根据需要随意设置地区代码格式,只要其中包含三个数字占位符即可。

如果出现错误,则会返回一个空 String,以及一个说明已将此错误保存到 error 属性的 String。error 属性可以是下列值之一:

MXML 语法expanded隐藏 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="+()#-. "
  />
  

查看示例

另请参见

mx.formatters.SwitchSymbolFormatter


公共属性
 属性定义方
  areaCode : Object
添加到美国格式的七位电话号码中的地区代码数字,从而形成一个十位数字的电话号码。
PhoneFormatter
  areaCodeFormat : String
当 areacode 属性显示为七位数字格式时,此值是默认的地区代码格式。
PhoneFormatter
 Inheritedconstructor : Object
对类对象或给定对象实例的构造函数的引用。
Object
 InheriteddefaultInvalidFormatError : String
[静态] 为 formatter 指定的格式字符串无效时出现的错误消息。
Formatter
 InheriteddefaultInvalidValueError : String
[静态] 为 formatter 指定的值无效时出现的错误消息。
Formatter
 Inheritederror : String
发生错误时由 formatter 保存的说明。
Formatter
  formatString : String
一个字符串,其中包含代表指定电话号码格式的掩码字符。
PhoneFormatter
 Inheritedprototype : Object
[静态] 对类或函数对象的原型对象的引用。
Object
  validPatternChars : String
适用于 formatString 属性的有效字符列表。
PhoneFormatter
受保护的属性
 属性定义方
 InheritedresourceManager : IResourceManager
[只读 (read-only)] 引用管理所有应用程序本地化资源的对象。
Formatter
公共方法
 方法定义方
  
构造函数。
PhoneFormatter
  
将 String 设置为电话号码格式。
PhoneFormatter
 Inherited
指示对象是否已经定义了指定的属性。
Object
 Inherited
指示 Object 类的实例是否在指定为参数的对象的原型链中。
Object
 Inherited
指示指定的属性是否存在、是否可枚举。
Object
 Inherited
设置循环操作动态属性的可用性。
Object
 Inherited
返回指定对象的字符串表示形式。
Object
 Inherited
返回指定对象的原始值。
Object
受保护的方法
 方法定义方
 Inherited
构建 Formatter 时将调用此方法,并且每当 ResourceManager 调度“change”事件来指示本地化资源已经过某种更改时,都会再次调用此方法。
Formatter
属性详细信息
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 属性。
示例 如何使用示例
PhoneFormatterExample.mxml
<?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>