不错的JS验证~~~~~~~~~~~~~~~~~~~~~~~~~
用途:校验ip地址的格式
输入:strIP:ip地址
返回:如果通过验证返回true,否则返回false;
1 2 3 4 5 6 7 8 9 10 11 | */
function isIP(strIP) {
if (isNull(strIP)) return false;
var re=/^(\d+)\.(\d+)\.(\d+)\.(\d+)$/g
if (re.test(strIP))
{
if ( RegExp. $1 <256 && RegExp. $2 <256 && RegExp. $3 <256 && RegExp. $4 <256) return true;
}
return false;
}
/*
|
登入後複製
用途:检查输入字符串是否为空或者全部都是空格
输入:str
返回:
如果全是空返回true,否则返回false
1 2 3 4 5 6 7 8 9 | */
function isNull( str ){
if ( str == "" ) return true;
var regu = "^[ ]+$" ;
var re = new RegExp(regu);
return re.test(str);
}
/*
|
登入後複製
用途:检查输入对象的值是否符合整数格式
输入:str 输入的字符串
返回:如果通过验证返回true,否则返回false
1 2 3 4 5 6 | */
function isInteger( str ){
var regu = /^[-]{0,1}[0-9]{1,}$/;
return regu.test(str);
}
/*
|
登入後複製
用途:检查输入手机号码是否正确
输入:
s:字符串
返回:
如果通过验证返回true,否则返回false
1 2 3 4 5 6 7 8 9 10 11 | */
function checkMobile( s ){
var regu =/^[1][3][0-9]{9}$/;
var re = new RegExp(regu);
if (re.test(s)) {
return true;
} else {
return false;
}
}
/*
|
登入後複製
用途:检查输入字符串是否符合正整数格式
输入:
s:字符串
返回:
如果通过验证返回true,否则返回false
1 2 3 4 5 6 7 8 9 10 11 | */
function isNumber( s ){
var regu = "^[0-9]+$" ;
var re = new RegExp(regu);
if (s.search(re) != -1) {
return true;
} else {
return false;
}
}
/*
|
登入後複製
用途:检查输入字符串是否是带小数的数字格式,可以是负数
输入:
s:字符串
返回:
如果通过验证返回true,否则返回false
1 2 3 4 5 6 7 8 9 10 11 12 | */
function isDecimal( str ){
if (isInteger(str)) return true;
var re = /^[-]{0,1}(\d+)[\.]+(\d+)$/;
if (re.test(str)) {
if (RegExp. $1 ==0&&RegExp. $2 ==0) return false;
return true;
} else {
return false;
}
}
/*
|
登入後複製
用途:检查输入对象的值是否符合端口号格式
输入:str 输入的字符串
返回:如果通过验证返回true,否则返回false
1 2 3 4 5 | */
function isPort( str ){
return (isNumber(str) && str<65536);
}
/*
|
登入後複製
用途:检查输入对象的值是否符合E-Mail格式
输入:str 输入的字符串
返回:如果通过验证返回true,否则返回false
1 2 3 4 5 6 7 | */
function isEmail( str ){
var myReg = /^[-_A-Za-z0-9]+@([_A-Za-z0-9]+\.)+[A-Za-z0-9]{2,3}$/;
if (myReg.test(str)) return true;
return false;
}
/*
|
登入後複製
用途:检查输入字符串是否符合金额格式
格式定义为带小数的正数,小数点后最多三位
输入:
s:字符串
返回:
如果通过验证返回true,否则返回false
1 2 3 4 5 6 7 8 9 10 11 | */
function isMoney( s ){
var regu = "^[0-9]+[\.][0-9]{0,3}$" ;
var re = new RegExp(regu);
if (re.test(s)) {
return true;
} else {
return false;
}
}
/*
|
登入後複製
用途:检查输入字符串是否只由英文字母和数字和下划线组成
输入:
s:字符串
返回:
如果通过验证返回true,否则返回false
1 2 3 4 5 6 7 8 9 10 11 | */
function isNumberOr_Letter( s ){
var regu = "^[0-9a-zA-Z\_]+$" ;
var re = new RegExp(regu);
if (re.test(s)) {
return true;
} else {
return false;
}
}
/*
|
登入後複製
用途:检查输入字符串是否只由英文字母和数字组成
输入:
s:字符串
返回:
如果通过验证返回true,否则返回false
1 2 3 4 5 6 7 8 9 10 11 | */
function isNumberOrLetter( s ){
var regu = "^[0-9a-zA-Z]+$" ;
var re = new RegExp(regu);
if (re.test(s)) {
return true;
} else {
return false;
}
}
/*
|
登入後複製
用途:检查输入字符串是否只由汉字、字母、数字组成
输入:
value:字符串
返回:
如果通过验证返回true,否则返回false
1 2 3 4 5 6 7 8 9 10 11 | */
function isChinaOrNumbOrLett( s ){
var regu = "^[0-9a-zA-Z\u4e00-\u9fa5]+$" ;
var re = new RegExp(regu);
if (re.test(s)) {
return true;
} else {
return false;
}
}
/*
|
登入後複製
用途:判断是否是日期
输入:date:日期;fmt:日期格式
返回:如果通过验证返回true,否则返回false
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | */
function isDate( date , fmt ) {
if (fmt==null) fmt= "yyyyMMdd" ;
var yIndex = fmt.indexOf( "yyyy" );
if (yIndex==-1) return false;
var year = date .substring(yIndex,yIndex+4);
var mIndex = fmt.indexOf( "MM" );
if (mIndex==-1) return false;
var month = date .substring(mIndex,mIndex+2);
var dIndex = fmt.indexOf( "dd" );
if (dIndex==-1) return false;
var day = date .substring(dIndex,dIndex+2);
if (!isNumber(year)||year> "2100" || year< "1900" ) return false;
if (!isNumber(month)||month> "12" || month< "01" ) return false;
if (day>getMaxDay(year,month) || day< "01" ) return false;
return true;
}
function getMaxDay(year,month) {
if (month==4||month==6||month==9||month==11)
return "30" ;
if (month==2)
if (year%4==0&&year%100!=0 || year%400==0)
return "29" ;
else
return "28" ;
return "31" ;
}
/*
|
登入後複製
用途:字符1是否以字符串2结束
输入:str1:字符串;str2:被包含的字符串
返回:如果通过验证返回true,否则返回false
1 2 3 4 5 6 7 8 9 | */
function isLastMatch(str1,str2)
{
var index = str1.lastIndexOf(str2);
if (str1.length==index+str2.length) return true;
return false;
}
/*
|
登入後複製
用途:字符1是否以字符串2开始
输入:str1:字符串;str2:被包含的字符串
返回:如果通过验证返回true,否则返回false
1 2 3 4 5 6 7 8 | */
function isFirstMatch(str1,str2)
{
var index = str1.indexOf(str2);
if (index==0) return true;
return false;
}
/*
|
登入後複製
用途:字符1是包含字符串2
输入:str1:字符串;str2:被包含的字符串
返回:如果通过验证返回true,否则返回false
1 2 3 4 5 6 7 8 9 | */
function isMatch(str1,str2)
{
var index = str1.indexOf(str2);
if (index==-1) return false;
return true;
}
/*
|
登入後複製
用途:检查输入的起止日期是否正确,规则为两个日期的格式正确,
且结束如期>=起始日期
输入:
startDate:起始日期,字符串
endDate:结束如期,字符串
返回:
如果通过验证返回true,否则返回false
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | */
function checkTwoDate( startDate,endDate ) {
if ( !isDate(startDate) ) {
alert( "起始日期不正确!" );
return false;
} else if ( !isDate(endDate) ) {
alert( "终止日期不正确!" );
return false;
} else if ( startDate > endDate ) {
alert( "起始日期不能大于终止日期!" );
return false;
}
return true;
}
/*
|
登入後複製
用途:检查输入的Email信箱格式是否正确
输入:
strEmail:字符串
返回:
如果通过验证返回true,否则返回false
1 2 3 4 5 6 7 8 9 10 11 12 | */
function checkEmail(strEmail) {
var emailReg = /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/;
if ( emailReg.test(strEmail) ){
return true;
} else {
alert( "您输入的Email地址格式不正确!" );
return false;
}
}
/*
|
登入後複製
用途:检查输入的电话号码格式是否正确
输入:
strPhone:字符串
返回:
如果通过验证返回true,否则返回false
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | */
function checkPhone( strPhone ) {
var phoneRegWithArea = /^[0][1-9]{2,3}-[0-9]{5,10}$/;
var phoneRegNoArea = /^[1-9]{1}[0-9]{5,8}$/;
var prompt = "您输入的电话号码不正确!"
if ( strPhone.length > 9 ) {
if ( phoneRegWithArea.test(strPhone) ){
return true;
} else {
alert( prompt );
return false;
}
} else {
if ( phoneRegNoArea.test( strPhone ) ){
return true;
} else {
alert( prompt );
return false;
}
}
}
/*
|
登入後複製
用途:检查复选框被选中的数目
输入:
checkboxID:字符串
返回:
返回该复选框中被选中的数目
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 | */
function checkSelect( checkboxID ) {
var check = 0;
var i=0;
if ( document.all(checkboxID).length > 0 ) {
for ( i=0; i<document.all(checkboxID).length; i++ ) {
if ( document.all(checkboxID).item( i ).checked ) {
check += 1;
}
}
} else {
if ( document.all(checkboxID).checked )
check = 1;
}
return check;
}
function getTotalBytes(varField) {
if (varField == null)
return -1;
var totalCount = 0;
for (i = 0; i< varField.value.length; i++) {
if (varField.value.charCodeAt(i) > 127)
totalCount += 2;
else
totalCount++ ;
}
return totalCount;
}
function getFirstSelectedValue( checkboxID ){
var value = null;
var i=0;
if ( document.all(checkboxID).length > 0 ){
for ( i=0; i<document.all(checkboxID).length; i++ ){
if ( document.all(checkboxID).item( i ).checked ){
value = document.all(checkboxID).item(i).value;
break ;
}
}
} else {
if ( document.all(checkboxID).checked )
value = document.all(checkboxID).value;
}
return value;
}
function getFirstSelectedIndex( checkboxID ){
var value = -2;
var i=0;
if ( document.all(checkboxID).length > 0 ){
for ( i=0; i<document.all(checkboxID).length; i++ ) {
if ( document.all(checkboxID).item( i ).checked ) {
value = i;
break ;
}
}
} else {
if ( document.all(checkboxID).checked )
value = -1;
}
return value;
}
function selectAll( checkboxID,status ){
if ( document.all(checkboxID) == null)
return ;
if ( document.all(checkboxID).length > 0 ){
for ( i=0; i<document.all(checkboxID).length; i++ ){
document.all(checkboxID).item( i ).checked = status;
}
} else {
document.all(checkboxID).checked = status;
}
}
function selectInverse( checkboxID ) {
if ( document.all(checkboxID) == null)
return ;
if ( document.all(checkboxID).length > 0 ) {
for ( i=0; i<document.all(checkboxID).length; i++ ) {
document.all(checkboxID).item( i ).checked = !document.all(checkboxID).item( i ).checked;
}
} else {
document.all(checkboxID).checked = !document.all(checkboxID).checked;
}
}
function checkDate ( value ) {
if (value=='') return true;
if (value.length!=8 || !isNumber(value)) return false;
var year = value.substring(0,4);
if (year> "2100" || year< "1900" )
return false;
var month = value.substring(4,6);
if (month> "12" || month< "01" ) return false;
var day = value.substring(6,8);
if (day>getMaxDay(year,month) || day< "01" ) return false;
return true;
}
/*
|
登入後複製
用途:检查输入的起止日期是否正确,规则为两个日期的格式正确或都为空
且结束日期>=起始日期
输入:
startDate:起始日期,字符串
endDate: 结束日期,字符串
返回:
如果通过验证返回true,否则返回false
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | */
function checkPeriod( startDate,endDate ) {
if ( ! checkDate (startDate) ) {
alert( "起始日期不正确!" );
return false;
} else if ( ! checkDate (endDate) ) {
alert( "终止日期不正确!" );
return false;
} else if ( startDate > endDate ) {
alert( "起始日期不能大于终止日期!" );
return false;
}
return true;
}
/*
|
登入後複製
用途:检查证券代码是否正确
输入:
secCode:证券代码
返回:
如果通过验证返回true,否则返回false
1 2 3 4 5 6 7 8 9 10 11 12 13 | */
function checkSecCode( secCode ) {
if ( secCode.length !=6 ){
alert( "证券代码长度应该为6位" );
return false;
}
if (!isNumber( secCode ) ){
alert( "证券代码只能包含数字" );
return false;
}
return true;
}
|
登入後複製
/****************************************************
function:cTrim(sInputString,iType)
description:字符串去空格的函数
parameters:iType:1=去掉字符串左边的空格
2=去掉字符串左边的空格
0=去掉字符串左边和右边的空格
return value:去掉空格的字符串
****************************************************/
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | function cTrim(sInputString,iType)
{
var sTmpStr = ' ';
var i = -1;
if (iType == 0 || iType == 1)
{
while (sTmpStr == ' ')
{
++i;
sTmpStr = sInputString. substr (i,1);
}
sInputString = sInputString.substring(i);
}
if (iType == 0 || iType == 2)
{
sTmpStr = ' ';
i = sInputString.length;
while (sTmpStr == ' ')
{
--i;
sTmpStr = sInputString. substr (i,1);
}
sInputString = sInputString.substring(0,i+1);
}
return sInputString;
}
/*
|
登入後複製
以上就是js验证表单的详细总结的内容,更多相关内容请关注PHP中文网(www.php.cn)!