使用javascript 解析手机号码
2011-12-06 17:53
399 查看
以下javascript代码用于解析手机号码,还有不尽完善的地方,也没时间写示列:
//JavaScriptDocument
functionAnalyTelNumber(id){
this._atn_input_id=id;//获取验证号码的文本框的id
this._atn_mobile_error="";//所以错误或重复的号码
this._atn_mobile_right="";//所有正确的号码
this._atn_mobile_groupSize=100;//电话号码数组的大小设置
this._atn_mobile_num=0;//解析到正确号码的个数
this._atn_array=newArray();//解析号码的数组
//开始解析所以
this._atn_StartAnaly=function(){
this._atn_AnalyData(_atn_GetValue(this._atn_input_id));
returnthis._atn_mobile_right;
}
//显示正确的号码
this._atn_showRightMobile=function(id){
_atn_SetValue(id,this._atn_mobile_right);
}
//显示错误的号码
this._atn_showErrorMobile=function(id){
_atn_SetValue(id,this._atn_mobile_error);
}
this.atn_showMobileNum=function(id){
_atn_SetValue(id,this._atn_mobile_num);
}
//取出数组
this._atn_GetArray=function(){
returnthis._atn_array;
}
//获取第一个并将其删除
this._atn_GetFirstAndDelIt=function(){
returnthis._atn_array.shift();
}
//获取数组剩下的所以号码
this._atn_GetArrayAllNumber=function(){
if(!this._atn_array)return"";
var_atn_allNumber="";
for(vari=0;i<this._atn_array.length;i++){
_atn_allNumber+=this._atn_array[i].tel+",";
}
return_atn_allNumber;
}
//解析号码
this._atn_AnalyData=function(_atn_data){
if(!_atn_data)returnnull;
var_atn_mobile_pattern=/\d+/g;
var_atn_mobile_onetel_Pattern=/^0?1[3|4|5|8]\d{9}$/;
var_atn_mobile_allNumber=_atn_data.match(_atn_mobile_pattern);
var_atn_mobile_one="";
var_atn_i=0,_atn_num=0,_atn_tel="",_atn_json="";
if(!_atn_mobile_allNumber){returnnull;}
for(vari=0;i<_atn_mobile_allNumber.length;i++){
_atn_mobile_one=_atn_mobile_allNumber[i];
if(_atn_mobile_onetel_Pattern.test(_atn_mobile_one)&&this._atn_mobile_right.indexOf(_atn_mobile_one)<0){
this._atn_mobile_right+=_atn_mobile_one+",";
_atn_tel+=_atn_mobile_one+",";
this._atn_mobile_num++;
_atn_num++;
if(_atn_num==this._atn_mobile_groupSize||i+1==_atn_mobile_allNumber.length){
_atn_tel=_atn_tel.substring(0,_atn_tel.length-1);
_atn_json="({\"index\":\""+_atn_i+"\",\"tel\":\""+_atn_tel+"\",\"num\":\""+_atn_num+"\"})";
var_atn_json_data=eval(_atn_json);
this._atn_array[_atn_i]=_atn_json_data;
_atn_num=0;
_atn_tel="";
_atn_i++;
}
}else{
this._atn_mobile_error+=_atn_mobile_one+",";
}
}
returnthis._atn_array;
}
_atn_GetValue=function(_atn_tid){
var_atn_tag=_atn_G(_atn_tid);
if(_atn_tag){
if(_atn_tag.tagName=="INPUT"||_atn_tag.tagName=="TEXTAREA"){
return_atn_tag.value;
}else{
return_atn_tag.innerHTML;
}
}
returnnull;
}
_atn_SetValue=function(_atn_tid,_atn_value){
var_atn_tag=_atn_G(_atn_tid);
if(_atn_tag){
if(_atn_tag.tagName=="INPUT"||_atn_tag.tagName=="TEXTAREA"){
_atn_tag.value=_atn_value;
}else{
_atn_tag.innerHTML=_atn_value;
}
}
}
_atn_G=function(_atn_tid){
returndocument.getElementById(_atn_tid);
}
}
相关文章推荐
- Android手机号码归属地的查询(使用聚合数据API,获取JSON数据并解析)
- 写一个程序用来查询手机号码的归属地(使用的是HttpURLConnection的get提交方式)
- 使用webService调用手机号码归属地
- javascript (js)判断手机号码中国移动、中国联通、中国电信
- 使用JavaScript调用手机平台上的原生API
- javascript 手机号码正则表达式验证函数
- 使用webservice做一个手机号码归属地查询程序
- JavaScript之正则表达式验证邮箱,手机号码,身份证,网址,QQ,邮政编码,中文
- 使用C#解析并运行JavaScript代码
- Android Fragment完全解析及:: Android手机平板使用Fragment实现兼容手机和平板的程序
- 使用JavaScript判断手机的横竖屏
- jquery使用淘宝接口跨域查询手机号码归属地实例
- 使用JavaScript判断手机是处于横屏还是竖屏
- Ajax使用一+javascript解析Ajax返回的json字符串
- 使用php-js-ext在PHP内解析javascript脚本
- JavaScript验证手机号码
- JS中使用正则查找查找字符串中的手机号码或者固定电话
- 解析javascript 实用函数的使用详解
- 深入解析JavaScript编程中的this关键字使用