js:本地外地手机判断
/*本地手机数据集*/
var arr = new Array(1868020,1868021
)
/*本地、外地手机检测*/
function GetZeroByPhone(phone) {
var partten = /^0(([1-9]\d)|([3-9]\d{2}))\d{8}$/; //没有中间那段 -的 座机格式是 01098909899
if (partten.test(phone) || phone.toString().length < 11 || phone.toString().length > 11) {
//座机
return "";
}
var value = phone.substring(0, 7);
var startIndex = 0,
endIndex = arr.length - 1; middle = Math.floor((endIndex - startIndex) / 2);
var loop = 0; //中断因子,若15次还未有结果,则跳出循环,防止死循环
while (arr[middle] != value && startIndex < endIndex && (++loop) < 15) {
if (arr[middle] > value) {
endIndex = middle - 1;
} else if (arr[middle] < value) {
startIndex = middle + 1;
}
middle = startIndex + Math.floor((endIndex - startIndex) / 2);
}
return (arr[middle] == value) ? "" : "0";
}
/*拨号前手机加前缀,若手机号是否本地手机,则电话号码前要加0*/
function PhoneNum(phone) {
//selPrefix: 1自动检测 2拨号加0 3拨号不加0
var selPrefix = ""; //指定前台是否加0
if (document.getElementById("ddlPrefix") != undefined) {
selPrefix = document.getElementById("ddlPrefix").value;
}
if (selPrefix == undefined || selPrefix == "" || selPrefix == "1") {
return PhonePrefix + GetZeroByPhone(phone) + phone;
} else if (selPrefix == "2") {
return PhonePrefix + "0" + phone;
} else if (selPrefix == "3") {
return PhonePrefix + phone;
}
}
浙公网安备 33010602011771号