import mx.utils.StringUtil;
import mx.validators.ValidationResult;
import mx.validators.Validator;
public class PhoneValidator extends Validator
{
public function PhoneValidator()
{
super();
}
private var _phoneInvalid:String="正确格式(010-865425433/010-865252352-1245/13933636356)";
private var _phoneInvalidCode:String='10011';
protected var phone1:RegExp = /^((0\d{2,3})-)(\d{6,9})$/ ;
protected var phone2:RegExp = /^((0\d{2,3})-)(\d{6,9})(-(\d{1,5}))$/ ;
protected var phone3:RegExp = /^\d{11}$/ ;
private var _valtype:int = 0 ;
public function get phoneInvalidError():String{
return _phoneInvalid;
}
public function set phoneInvalidError(invalidString:String):void{
this._phoneInvalid = invalidString;
}
//验证
private function doPhoneValidation(validator:PhoneValidator, value:Object, baseField:String):Array{
var rs:Array = [];
var _ff:Boolean = false ;
var _str:String = StringUtil.trim(String(value)) ;
if(valtype==0 || valtype==1)
_ff = phone3.test(_str) ;
if( (valtype==0 || valtype==2))
{
if(_ff==false)
_ff = phone2.test(_str) ;
if(_ff==false)
_ff = phone1.test(_str) ;
}
if(!_ff)
rs.push(new ValidationResult(true,baseField,validator._phoneInvalidCode,validator._phoneInvalid));
return rs;
}
override protected function doValidation(value:Object):Array{
var rs:Array = super.doValidation(value);
var val:String = StringUtil.trim( value?String(value):'');
if(rs.length >0 || ((val.length == 0) && !required) ){
return rs;
}
return doPhoneValidation(this,value,null);
}
override protected function resourcesChanged():void
{
super.resourcesChanged();
this.requiredFieldError="必填";
}
/**
* 是否只是手机验证 0 手机加座机 1手机 2座机
*/
public function get valtype():int
{
return _valtype;
}
/**
* @private
*/
public function set valtype(value:int):void
{
_valtype = value;
if(value==0)
_phoneInvalid = "正确格式(010-865425433/010-865252352-1245/13933636356)";
else if(value==1)
_phoneInvalid = "正确格式(13933636356)";
else if(value==2)
_phoneInvalid = "正确格式(010-865425433/010-865252352-1245)";
}
}
}
相关推荐
flex框架之Cairngorm框架,包括Cairngorm框架
资源名称:Flex企业级开发框架 中文PDF版内容简介: Flex企业级开发框架 中文PDF版讲述的主要内容是Flex企业级开发框架;有需要的朋友可以下载看看。 Flex 是一个高效、免费的开源框架,可用于构建具有表现力的 Web...
Flex 验证器简介 用户输入的数据有时候并不满足应用程序的规定,在 Flex 中验证器用来保证 UI 中的数据满足某种规则。...所以本文提出构建一个自动验证框架来统一管理多个验证器,在实践中证明是很有效的数据验证工具。
用于flex里的文本框,下拉选择框,自定义正则表达式验证。
FeaF,中文名是【飞帆】,是flex enterprise application frame的意思。 ______________________________________________ | | FeaF——飞帆 | 直达web2.0的海岸 | 后web2.0时代全面学习【Flex】技术的飞帆 ...
flex框架flex框架 JAVA-FLEXflex框架 JAVA-FLEX
Flex3管理系统框架(转载) 完整的代码,仅供参考 1.前台: Flex 2.后台: .NET 3.数据库: MSSQL2005 4.前台Flex 与.NET 沟通方式: HTTPSEVERS JSON 5..NET与数据库连接方式: Linq to SQL
1、 下载安装Flex Builder 3.0; 2、 将Flex Builder 3安装目录下的plugins、features、sdks文件夹拷贝到eclipse目录下; 3、 重启MyEclipse; 4、 进行Flex的配置。在Eclipse中,点击->Window->Preferences->Flex->...
flex_4框架类_关系图,官方文档,参考资料
NULL 博文链接:https://kingnights.iteye.com/blog/1026853
一个完整的Flex+Java登录实例,基于Flex框架
flex框架之Cairngorm框架,一个用Cairngorm与后台通信实例
Flex企业级开发框架.pdf Flex企业级开发框架.pdf
Flex+Java完美整合框架,cleartookit使用Balaze框架
flex开发源码共享达内的android培训项目源码
为移动端设计,基于 Flex 的 UI 框架。现代化:基于 Flex 设计,支持移动端全部主流浏览器,支持 Android 微信内置浏览器;
理解Flex3组件和框架的生命周期.理解Flex3组件和框架的生命周期
Flex Mate框架swc包及Mate用法。
环境:Window XP Sp3, IE 7.0, Tomcat 6.0, MyEclipse 5.5, Flex Builder 3, Ext 3.2。 使用步骤: ...阅读对象:熟悉Flex框架、Ext框架技术的人员,并且希望使用它们开发出更丰富多彩的B/S架构的应用。
TweenLite为GreenSock公司的一款基于ActionScript的免费开源的物理引擎。目前所开放下载的有 as2.0 和 as3.0 两个版本。用起来也相当的轻便,也是比较主流的第三方缓动引擎在使用方面也比较简单。...