美国电话输入格式限制 和 格式化(如果10位数字,电话自动转换格式 (408) 888-8888*109 )
<input type="text" name="phone" maxlength="50" maxlength="50" onKeyPress="return CheckPhoneNumber(window.event, this)" onBlur="javascript:FormatPhoneNumber(this)">

function CheckPhoneNumber(e) ...{
var KeyCode = (e.keyCode) ? e.keyCode : e.which;
return ((KeyCode == 8) // backspace
|| (KeyCode == 9) // tab
|| (KeyCode == 37) // left arrow
|| (KeyCode == 39) // right arrow
|| (KeyCode == 46) // delete
|| ((KeyCode > 47) && (KeyCode < 58)) // 0 - 9
|| (KeyCode == 46) // .
|| (KeyCode == 42) // *
|| (KeyCode == 45) // -
);
}

function FormatPhoneNumber(t)...{
var tempNo = ''
var i
var acode
for(i=0;i<t.value.length;i++)...{
acode = t.value.charAt(i).charCodeAt()
if (acode>47 && acode<58) ...{
if (!((i==0) && (t.value.charAt(i)=='1'))) ...{
tempNo += t.value.charAt(i);
}
}
else if (acode==42) ...{ // if equal * , break
break;
}
}
if (tempNo.length==10) ...{
tempNo = '('+tempNo.charAt(0)+tempNo.charAt(1)+tempNo.charAt(2)+') '+tempNo.charAt(3)+tempNo.charAt(4)+tempNo.charAt(5)+'-'+tempNo.charAt(6)+tempNo.charAt(7)+tempNo.charAt(8)+tempNo.charAt(9)
if (t.value.indexOf('*')!=-1) ...{
tempNo = tempNo + t.value.substring(t.value.indexOf('*'),t.value.length);
}
t.value = tempNo
}
}钱的转换

function CheckMoney(e,t) ...{
var dotp = t.value.indexOf(".")
var len = t.value.length
var KeyCode = (e.keyCode) ? e.keyCode : e.which;
if ((KeyCode == 8) // backspace
|| (KeyCode == 9) // tab
|| (KeyCode == 37) // left arrow
|| (KeyCode == 39) // right arrow
|| (KeyCode == 46) // delete
|| ((KeyCode > 47) && (KeyCode < 58)) // 0 - 9
|| (KeyCode == 46) // .
) ...{
if (dotp != -1) ...{
if (KeyCode == 46) ...{
return false
}
}
else ...{
return true
}
}
else ...{
return false
}
}

function FormatMoney(t)...{
if(t.value!='')...{
t.value=parseInt(t.value*100)/100
}
}输入整数判断

function CheckInt(e) ...{
var KeyCode = (e.keyCode) ? e.keyCode : e.which;
return ((KeyCode == 8) // backspace
|| (KeyCode == 9) // tab
|| (KeyCode == 37) // left arrow
|| (KeyCode == 39) // right arrow
|| (KeyCode == 46) // delete
|| ((KeyCode > 47) && (KeyCode < 58)) // 0 - 9
);
}时间判断

function CheckTime(e,t) ...{
var KeyCode = (e.keyCode) ? e.keyCode : e.which;
return ((KeyCode == 8) // backspace
|| (KeyCode == 9) // tab
|| (KeyCode == 37) // left arrow
|| (KeyCode == 39) // right arrow
|| (KeyCode == 32) // space
|| (KeyCode == 46) // delete
|| ((KeyCode > 47) && (KeyCode < 58)) // 0 - 9
|| (KeyCode == 58) // :
|| (KeyCode == 97) // a
|| (KeyCode == 41) // A
|| (KeyCode == 112) // p
|| (KeyCode == 80) // P
|| (KeyCode == 109) // m
|| (KeyCode == 77) // M
);
}

function FormatTime(t) ...{
var myReg = /^(((([0]?[0-9]|1[0-9]|2[0-4])(:)(([0]?[0-9])|([1-5][0-9])))((:)(([0]?[0-9])|([1-5][0-9])))?)|(((([0]?[1-9]|1[0-2])(:)(([0]?[0-9])|([1-5][0-9])))((:)(([0]?[0-9])|([1-5][0-9])))?) ?((((A|a)|(P|p))(M|m)))))$/; 
if(myReg.test(t.value)||t.value=='') ...{
return true;
}
else ...{
alert("Correct Time Format: hh:mm:ss am/pm, ie 17:23, 3:24:44, 1:00 pm");
t.value="";
t.focus();
}
}
美国电话格式与数据输入验证
本文介绍了一种美国电话号码格式化的JavaScript实现方法,并提供了输入验证的功能,包括电话号码、金额、整数及时间的格式化处理。
1383

被折叠的 条评论
为什么被折叠?



