function isEmpty(value)
{
return value == '' || value == null;
}
function isMail(value)
{
return /^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/.test(value);
}
function isAlphabet(value)
{
return /^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/.test(value);
}
function isUrl(value)
{
return /^(ht|f)tp(s?)\:\/\/(([a-zA-Z0-9\-\._]+(\.[a-zA-Z0-9\-\._]+)+)|localhost)(\/?)([a-zA-Z0-9\-\.\?\,\'\/\\\+&%\$#_]*)?([\d\w\.\/\%\+\-\=\&\?\:\\\"\'\,\|\~\;]*)$/.test(value);
}
function isMobile(value)
{
return /^1[3|4|5|6|7|8|9][0-9]{9}$/.test(value);
}
function isPostcode(value)
{
if(value.length!=6)
{
return false;
}
return /^(\d+)$/.test(value);
}
function isPhone(value)
{
//兼容格式: 国家代码(2到3位)-区号(3到4位)-电话号码(7到8位)-分机号(3位)
// return /^(([0\+]\d{2,3}-)?(0\d{2,3})-)?(\d{7,8})(-(\d{3,}))?$/.test(value);
return /^((0\d{2,3})-)(\d{7,8})(-(\d{3,}))?$/.test(value);
}
function checkIdCardDate(dateX)
{
var patter = /^\d{2,4}\d{2}\d{2}$/;
return patter.test(dateX);
}
function isIdCardNo(num) {
var factorArr = new Array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1);
var error;
var varArray = new Array();
var intValue;
var lngProduct = 0;
var intCheckDigit;
var intStrLen = num.length;
var idNumber = num;
// initialize
if ((intStrLen != 15) && (intStrLen != 18)) {
error = "输入身份证号码长度不对!";
alert(error);
return false;
}
// check and set value
for(i=0;i<intStrLen;i++) {
varArray[i] = idNumber.charAt(i);
if ((varArray[i] < '0' || varArray[i] > '9') && (i != 17)) {
error = "错误的身份证号码!.";
alert(error);
return false;
}
else if (i < 17) {
varArray[i] = varArray[i]*factorArr[i];
}
}
if (intStrLen == 18) {
//check date
var date8 = idNumber.substring(6,14);
if (checkIdCardDate(date8) == false) {
error = "身份证中日期信息不正确!.";
alert(error);
return false;
}
// calculate the sum of the products
for(i=0;i<17;i++) {
lngProduct = lngProduct + varArray[i];
}
// calculate the check digit
intCheckDigit = 12 - lngProduct % 11;
switch (intCheckDigit) {
case 10:
intCheckDigit = 'X';
break;
case 11:
intCheckDigit = 0;
break;
case 12:
intCheckDigit = 1;
break;
}
// check last digit
if (varArray[17].toUpperCase() != intCheckDigit) {
error = "身份证效验位错误!正确为: " + intCheckDigit + ".";
alert(error);
return false;
}
}
else{ //length is 15
//check date
var date6 = idNumber.substring(6,12);
if (checkIdCardDate(date6) == false) {
alert("身份证日期信息有误!.");
return false;
}
}
//alert ("Correct.");
return true;
}
function isNumber(value)
{
return /^[-+]?\d+(\.\d+)?$/.test(value);
}
function isPositiveNumber(value)
{
return /^[+]?\d+(\.\d+)?$/.test(value);
}
function isNegativeNumber(value)
{
return /^-\d+(\.\d+)?$/.test(value);
}
function isInteger(value)
{
return /^[+-]?\d+$/.test(value);
}
function isPositiveInteger(value)
{
return /^(\+)?\d+$/.test(value);
}
function isNegativeInteger(value)
{
return /^\-\d+$/.test(value);
}
function isDigit(value)
{
return /^\d$/.test(value);
}
function isUsCurrency(value)
{
return /^\$?([1-9]{1}[0-9]{0,2}(\,[0-9]{3})*(\.[0-9]{0,2})?|[1-9]{1}[0-9]{0,}(\.[0-9]{0,2})?|0(\.[0-9]{0,2})?|(\.[0-9]{1,2})?)$/.test(value);
}
//保留两位小数
//功能:将浮点数四舍五入,取小数点后2位
function toDecimal(x,n)
{
var temp = Math.pow(10,n);
var f = parseFloat(x);
if (isNaN(f))
{
return 0;
}
f = Math.round(x*temp)/temp;
return f;
}
//制保留2位小数,如:2,会在2后面补上00.即2.00
function toDecimal2(x,n)
{
var temp = Math.pow(10,n);
var f = parseFloat(x);
if (isNaN(f))
{
return 0;
}
var f = Math.round(x*temp)/temp;
var s = f.toString();
var rs = s.indexOf('.');
if (rs < 0)
{
rs = s.length;
s += '.';
}
while (s.length <= rs + n)
{
s += '0';
}
return s;
}
function getPhoneNum(phoneNum){
phoneNum = ('10000000000' + phoneNum).slice(-11);
phoneNum = phoneNum.slice(0, 3) + '****' + phoneNum.slice(-4);
return phoneNum;
}