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:
"Invalid value" means an invalid numeric value is passed
to the format() method. The value should be a valid number
in the form of a Number or a String, or the value contains a different
number of digits than what is specified in the format String.
"Invalid format" means any of the characters in the
formatString property do not match the allowed characters
specified in the validPatternChars property,
or the areaCodeFormat property is specified but does not
contain exactly three numeric placeholders.
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.
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
areaCodeFormat
property
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
formatString
property
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
validPatternChars
property
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>