function warningValue(msg, obj) { alert(msg); if ( obj.disabled != true ) { obj.focus(); obj.select(); } } function trim ( str ) { regExp = /\S/ if ( regExp.test(str) == false ) return ""; regExp = /(^\s*)(.*\S)(\s*$)/ regExp.exec(str); return RegExp.$2; } function checkEmail( obj, msg ) { var aEmail = obj.value; regExp1 = /(^[^@]+@[^@.]+\.[^@]+$)/ regExp2 = /(\.\.)/ if ( regExp1.test(aEmail) == false || regExp2.test(aEmail) == true ) { warningValue ( msg + "不是一个合法的email地址!", obj ); return false; } return true; } function checkDate( aYearValue, aMonthValue, aDayValue ) { var yearValue = parseInt(aYearValue,10); var monthValue = parseInt(aMonthValue,10); var dayValue = parseInt(aDayValue,10); if ( isNaN(yearValue) || isNaN(monthValue) || isNaN(dayValue) ) { return false; } monthValue--; if ( yearValue >= 1900 && yearValue < 2000 ) yearValue = yearValue-1900; var dateValue = new Date( yearValue, monthValue, dayValue ); if ( dateValue.getDate() != dayValue || dateValue.getMonth() != monthValue || dateValue.getYear() != yearValue ) return false; return true; } function parseDate( aDateStr, aDateSeq ) { var aYearValue=""; var aMonthValue=""; var aDayValue=""; if ( aDateSeq == "" ) { aYearValue = aDateStr.substring(0,4); aMonthValue = aDateStr.substring(4,6); aDayValue = aDateStr.substring(6,8); } else { var regPattern = "(" + "^[0-9]+"+")("+aDateSeq +")"; regExp = new RegExp(regPattern); if ( regExp.exec(aDateStr) != null ) aYearValue = RegExp.$1; regPattern = "("+aDateSeq+")("+"[0-9]+"+")("+aDateSeq+")" regExp = new RegExp(regPattern); if ( regExp.exec(aDateStr) != null ) aMonthValue = RegExp.$2; regPattern = "("+aDateSeq+")("+"[0-9]+$"+")"; regExp = new RegExp(regPattern); if ( regExp.exec(aDateStr) != null ) aDayValue = RegExp.$2; } return new Date( aYearValue, aMonthValue-1, aDayValue ); } function checkDateStr( aDateStr, aDateSeq ) { var aYearValue=""; var aMonthValue=""; var aDayValue=""; if ( aDateSeq == "" ) { aYearValue = aDateStr.substring(0,4); aMonthValue = aDateStr.substring(4,6); aDayValue = aDateStr.substring(6,8); } else { var regPattern = "(" + "^[0-9]+"+")("+aDateSeq +")"; regExp = new RegExp(regPattern); if ( regExp.exec(aDateStr) != null ) aYearValue = RegExp.$1; regPattern = "("+aDateSeq+")("+"[0-9]+"+")("+aDateSeq+")" regExp = new RegExp(regPattern); if ( regExp.exec(aDateStr) != null ) aMonthValue = RegExp.$2; regPattern = "("+aDateSeq+")("+"[0-9]+$"+")"; regExp = new RegExp(regPattern); if ( regExp.exec(aDateStr) != null ) aDayValue = RegExp.$2; } return checkDate ( aYearValue, aMonthValue, aDayValue ); } function checkValue ( obj, isNotNull, isNumber, minLength, maxLength, msg ) { var value = obj.value; if ( value.search("[^ \t]") == -1 ) { if ( isNotNull == true ) { warningValue ( msg + "不能为空或者空格!", obj ); return false; } else return true; } if ( isNumber == true ) { if ( value.search("[^0-9]") != -1 ) { warningValue ( msg + "必须为数字!", obj ); return false; } } if ( minLength != 0 && maxLength == minLength ) { if ( value.length != minLength ) { warningValue ( msg + "必须为" + minLength + "位!", obj ); return false; } } if ( minLength != 0 ) { if ( value.length < minLength ) { warningValue ( msg + "不能少于" + minLength + "位!", obj ); return false; } } if ( maxLength != 0 ) { if ( value.length > maxLength ) { warningValue ( msg + "不能多于" + maxLength + "位!", obj ); return false; } } return true; } function checkNumber(obj, msg) { var value = obj.value; var floatValue = new Number(value); if ( trim(value) == "" ) { warningValue( msg + "不能为空", obj ); return false; } if ( isNaN(floatValue) || floatValue < 0 ) { warningValue( msg + "不是一个合法的数额", obj ); return false; } return true; } function checkAmount(obj, msg) { if ( checkNumber(obj, msg) == false ) return false; var value = obj.value; var floatValue = new Number(value); if ( floatValue == 0.0 ) { warningValue( msg + "不能为零", obj ); return false; } return true; } function checkAmountValue(obj,maxValue,minValue,msg) { if ( checkNumber(obj, msg) == false ) return false; var value = obj.value; var floatValue = new Number(value); if ( floatValue == 0.0 ) { warningValue( msg + "不能为零", obj ); return false; } if ( floatValue > maxValue ) { warningValue( msg + "不能大于"+maxValue, obj ); return false; } if ( floatValue < minValue ) { warningValue( msg + "不能小于"+minValue, obj ); return false; } return true; } function checkJPExchangValue ( obj,msg ) { var value = obj.value; var index = value.indexOf("."); if (index!=-1 && (value.length-index-1)>2){ warningValue( msg + "小数点后最多两位数字", obj ); return false; } return true; } function checkFundID ( obj, isNotNull, msg ) { var value = obj.value; if ( value.search("[^ \t]") == -1 ) { if ( isNotNull == true ) { alert ( msg ); return false; } else return true; } } //身份证验证 function checkIdCard(obj, sexual, isNotNull) { if (checkValue(obj, isNotNull, true, 15, 18, "身份证号码") == false) { return false; } var idNo = obj.value; if (idNo.length != 18 && idNo.length != 15) { alert("身份证号码有误"); return false; } else { var year,month,day,a; if (idNo.length == 18) { year = idNo.substring(6,10); month = idNo.substring(10,12); day = idNo.substring(12,14); a = idNo.substring(16,17); } else if (idNo.length == 15) { year = "19" + idNo.substring(6,8); month = idNo.substring(8,10); day = idNo.substring(10,12); a = idNo.substring(14,15); } //出生年月判断 if (checkDate(year, month, day) == false) { alert("身份证号码有误"); return false; } //性别判断 if (a % 2 == 0 && sexual == "m") { alert("身份证号码有误"); return false; } else if (a % 2 == 1 && sexual == "f") { alert("身份证号码有误"); return false; } } } function checkPassword ( password, username, email, idno, msg ) { var charSet=""; for ( var i=0; i < password.length; i++ ) { if ( charSet.indexOf(password.substring(i,i+1)) == -1 ) charSet = charSet + password.substring(i,i+1); } var str = "0123456789", str1 = "9876543210"; if ( charSet.length < 2 || str.indexOf(password) != -1 || str1.indexOf(password) != -1 ) { alert ( "您的" + msg + "太简单了!" ); return false; } if ( idno.indexOf(password) != -1 ) { alert ( "您的" + msg + "不应该和证件号有关!" ); return false; } regExp = /(^[^@]+@)/ regExp.exec(email); if ( RegExp.$1.indexOf(password) != -1 ) { alert ( "您不应该使用email地址的用户名作为"+msg+"!" ); return false; } return true; } function checkDateLimit(strStartObj,strEndObj,msg,forward){ var strStartDate=strStartObj.value; if(checkDateStr(strStartDate,"-")==false){ alert("日期格式有误"); return false; } var sy=strStartDate.substring(0,4); var i=0; for (i=0; i eDate.getTime()) { alert(msg); return false; } return true; } function pbCheckNumber(obj, msg, isNotNull) { var value = obj.value; var floatValue = new Number(value); if (isNotNull == true) { if ( trim(value) == "" ) { warningValue( msg + "不能为空", obj ); return false; } } if ( isNaN(floatValue) || floatValue < 0 ) { warningValue( msg + "不是一个合法的数额", obj ); return false; } return true; } function pbCheckAmount(obj, msg, isNotNull, isZero) { if ( pbCheckNumber(obj, msg, isNotNull) == false ) return false; var value = obj.value; var floatValue = new Number(value); if (isZero == false) { if ( floatValue == 0.0 ) { warningValue( msg + "不能为零", obj ); return false; } } return true; }