程序代码
/**
* JavaScript 检查库
* @author Jarry.li
* @version 2.01
* @last modify time 2003/09/11
* #@ validate.js
* 第一类 检查并返回检查结果(true or false)
* a-1. ifDigit(str,allowNull) 是否为合法非负整数(examples/ifDigit.html)
* a-2. ifLetter(str,allowNull) 是否为英文字母
* a-3. ifExist(arr,element) 某个元素是否存在于某个数组中
* a-4. ifDay(str,allowNull) 是否为天数
* a-5. ifMonth(str,allowNull) 是否为月份
* a-6. ifYear(str,allowNull) 是否为年份
* a-7. ifYearInRange(str,min_year,max_year,allowNull) 是否为指定范围内的合法年份
* a-8. ifDate(String,allowNull) 是否为日期
* a-9. ifEmail(String,allowNull) 是否为邮件地址
* a-10. ifPhone(String,allowNull) 是否为电话号码
* a-11. ifGBK(String,allowNull) 是否包含中文字符
* a-12.ifMoney(String,allowNull) 是否为合法货币数字
* a-13 ifMoneyInRange(String,int,int,allowNull) 判断字符串是否为合法钱数,且是否超过限定范围
* a-14. ifAvildDate(year,month,day) 判断是否为合法日期
* a-15. ifSelectedButton(buttonGroup) 判断buttongroup为名的一组radio中有无被选中的项
* 第二类 检查后直接报错
* b-1. isDigit(Object,allowNull) 是否为数字
* b-2. isDigitInMaxLen(object,maxlength,allowNull) 是否为非负整数,且长度在指定范围内
* b-3. isDigitInRange(object,minValue,maxValue,allowNull) 是否为非负整数,且大小在指定范围内
* b-4. isLetter(Object,allowNull) 是否为字母
* b-5. isDay(Object,allowNull) 是否为天数
* b-6. isMonth(Object,allowNull) 是否为月份
* b-7. isYear(Object,allowNull) 是否为年份
* b-8. isYearInRange(object,min_year,max_year,allowNull) 是否为指定范围内的合法年份
* b-9. isDate(Object,allowNull) 是否为日期
* b-10. isEmail(Object,allowNull) 是否为邮件地址
* b-11. isPhone(Object,allowNull) 是否为电话号码
* b-12. isGBK(Object,allowNull) 是否为中文字符
* b-13. isMoney(Object,allowNull) 是否为合法货币数字
* b-14. isMoneyInRange(object,minValue,maxValue,allowNull) 判断是否合法钱数且是否超过限定额度
* b-15. isLengthInRange(Object, min, max,allowNull) 字符串长度是否在指定长度范围内
* b-16. checkValidDate(yyObject,mmObject,ddObject,allowNull) 对日期进行全面的检查
* b-17. checkValidDateRange(yyObject1,mmObject1,ddObject1,allowNull1,yyObject2,mmObject2,ddObject2,allowNull2)
* 检查起始日期及截止日期
* b-15. showMsg(String, Object) 显示提示信息String,光标焦点落在Object上,返回false
* 第三类 功能函数,并不报错
* c-1. getLength(String) 获取字符长度(每个中文字符为2个字符)
* c-2. trim(String) 去掉字符串前后的空格并返回
* c-3. textsTrim(formname) 将form中所有的text文本进行trim操作。
*/ //日期数组
arr_day=new Array("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",
"01","02","03","04","05","06","07","08","09");
//月份数组
arr_mon=new Array("1","2","3","4","5","6","7","8","9","10","11","12",
"01","02","03","04","05","06","07","08","09");
//建立者:jiarry@hotmail.com
//判断字符串是否为合法非负整数
// a-1 ifDigit(str,allowNull)
function ifDigit(str,allowNull){
slen=str.length;
if(slen==0) return allowNull;
for (i=0; i<slen; i++){
cc = str.charAt(i);
if (cc <"0" || cc >"9"){
return false;
}
}
return true;
}
//建立者:jiarry@hotmail.com
//功能:判断字符串是否都是英文字母
// a-2 ifLetter(str,allowNull)
function ifLetter(str,allowNull ){
slen=getLength(str);
if (slen==0) return allowNull;
str = str.toUpperCase();
for ( var i = 0 ; i < slen; i ++ ){
if ( str.charAt(i) < "A" || str.charAt(i) > "Z" )
return false;
}
return true;
}
//建立者:jiarry@hotmail.com
//功能:判断某个元素是否存在于数组中
//a-3 ifExist(arr,element) arr:数组;element:某个元素
function ifExist(arr,element){
for(var i=0;i<arr.length;i++){
if(element==arr[i]) return true;
}
return false;
}
//建立者:jiarry@hotmail.com
//功能:判断是否为合法天数
//a-4 ifDay(str,allowNull)
function ifDay(str,allowNull){
slen=getLength(str);
if (slen==0) return allowNull;
return ifExist(arr_day,str);
}
//建立者:jiarry@hotmail.com
//功能:判断是否为合法月份
//a-5 ifMonth(str,allowNull)
function ifMonth(str,allowNull){
slen=getLength(str);
if (slen==0) return allowNull;
return ifExist(arr_mon,str);
}
//建立者:jiarry@hotmail.com
//功能:判断是否为合法年份(要求是四位整数,且数字>=1800 并且<=2050)
//a-6 ifYear(str,allowNull)
function ifYear(str,allowNull){
return ifYearInRange(str,1800,2050,allowNull);
}
//建立者:jiarry@hotmail.com
//功能:判断是否为合法年份(要求是四位整数,且数字>=min_year 并且<=max_year)
//a-7 ifYearInRange(str,min_year,max_year,allowNull)
function ifYearInRange(str,min_year,max_year,allowNull){
slen=getLength(str);
if (slen==0) return allowNull;
if (slen!=4) return false;
if (!ifDigit(str,allowNull)) return false;
if (parseInt(str)<min_year || parseInt(str)>max_year) return false;
return true;
}
//建立者:jiarry@hotmail.com
//功能:判断是否为合法日期格式(要求是八位整数,格式为"yyyymmdd")
//a-8 ifDate(str,allowNull)