Packagemx.formatters
Classpublic class PhoneFormatter
InheritancePhoneFormatter Inheritance Formatter Inheritance Object

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

The PhoneFormatter class formats a valid number into a phone number format, including international configurations.

A shortcut is provided for the United States seven-digit format. If the areaCode property contains a value and you use the seven-digit format string, (###-####), a seven-digit value to format automatically adds the area code to the returned String. The default format for the area code is (###). You can change this using the areaCodeFormat property. You can format the area code any way you want as long as it contains three number placeholders.

If an error occurs, an empty String is returned and a String that describes the error is saved to the error property. The error property can have one of the following values:

MXML SyntaxexpandedHide MXML Syntax

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="+()#-. "
  />
  

View the examples

See also

mx.formatters.SwitchSymbolFormatter


Public Properties
 PropertyDefined By
  areaCode : Object
Area code number added to a seven-digit United States format phone number to form a 10-digit phone number.
PhoneFormatter
  areaCodeFormat : String
Default format for the area code when the areacode property is rendered by a seven-digit format.
PhoneFormatter
 InheriteddefaultInvalidFormatError : String
[static] Error message for an invalid format string specified to the formatter.
Formatter
 InheriteddefaultInvalidValueError : String
[static] Error messages for an invalid value specified to the formatter.
Formatter
 Inheritederror : String
Description saved by the formatter when an error occurs.
Formatter
  formatString : String
String that contains mask characters that represent a specified phone number format.
PhoneFormatter
  validPatternChars : String
List of valid characters that can be used in the formatString property.
PhoneFormatter
Protected Properties
 PropertyDefined By
 InheritedresourceManager : IResourceManager
[read-only] A reference to the object which manages all of the application's localized resources.
Formatter
Public Methods
 MethodDefined By
  
Constructor.
PhoneFormatter
  
format(value:Object):String
[override] Formats the String as a phone number.
PhoneFormatter
Protected Methods
 MethodDefined By
 Inherited
This method is called when a Formatter is constructed, and again whenever the ResourceManager dispatches a "change" Event to indicate that the localized resources have changed in some way.
Formatter
Property Detail
areaCodeproperty
areaCode:Object

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

Area code number added to a seven-digit United States format phone number to form a 10-digit phone number. A value of -1 means do not prepend the area code.

The default value is -1.


Implementation
    public function get areaCode():Object
    public function set areaCode(value:Object):void
areaCodeFormatproperty 
areaCodeFormat:String

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

Default format for the area code when the areacode property is rendered by a seven-digit format.

The default value is "(###) ".


Implementation
    public function get areaCodeFormat():String
    public function set areaCodeFormat(value:String):void
formatStringproperty 
formatString:String

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

String that contains mask characters that represent a specified phone number format.

The default value is "(###) ###-####".


Implementation
    public function get formatString():String
    public function set formatString(value:String):void
validPatternCharsproperty 
validPatternChars:String

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

List of valid characters that can be used in the formatString property. This property is used during validation of the formatString property.

The default value is "+()#- .".


Implementation
    public function get validPatternChars():String
    public function set validPatternChars(value:String):void
Constructor Detail
PhoneFormatter()Constructor
public function PhoneFormatter()

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

Constructor.

Method Detail
format()method
override public function format(value:Object):String

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

Formats the String as a phone number. If the value cannot be formatted, return an empty String and write a description of the error to the error property.

Parameters

value:Object — Value to format.

Returns
String — Formatted String. Empty if an error occurs. A description of the error condition is written to the error property.
Examples
PhoneFormatterExample.mxml
<?xml version="1.0" encoding="utf-8"?>
<!--

  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.

-->
<!-- Simple example to demonstrate PhoneFormatter. -->
<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">

    <fx: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 = "";
                }
            }
        ]]>
    </fx:Script>

    <fx:Declarations>
        <mx:PhoneFormatter id="phoneFormatter" 
                formatString="(###) ###-####" validPatternChars="#-() "/>

        <mx:PhoneNumberValidator id="pnVal" source="{phone}" property="text" 
                allowedFormatChars=""/>
    </fx:Declarations>

    <s:Panel title="PhoneFormatter Example"
            width="75%" height="75%"
            horizontalCenter="0" verticalCenter="0">
        <mx:Form left="10" right="10" top="10" bottom="10">
            <mx:FormItem label="Enter a 10-digit phone number:">
                <s:TextInput id="phone" text="" width="75%"/>
            </mx:FormItem>
            <mx:FormItem label="Formatted phone number: ">
                <s:TextInput id="formattedPhone" text="" width="75%" editable="false"/>
            </mx:FormItem>
            <mx:FormItem>
                <s:Button label="Validate and Format" click="Format();"/>
            </mx:FormItem>
        </mx:Form>
    </s:Panel>

</s:Application>