⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 checkvalue.js

📁 本源码为教学管理信息系统
💻 JS
📖 第 1 页 / 共 3 页
字号:
var IS_NULL     =	0X80; //	10000000var IS_FULL     =	0X40; //	01000000var IS_HALF     =	0X20; //	00100000var IS_ASCII    =	0X10; //	00010000var IS_NUM      =	0X08; //	00001000var IS_DATE     =	0X04; //	00000100var IS_PHONE    =	0X02; //	00000010var IS_EMAIL    =	0X01; //	00000001var IS_NOT_NULL =	0X00; //	00000000var MSG_CHECK_SUCCESS = "Check Success";function getAppVer() {	var sVer = navigator.appVersion;	var nVer = sVer.indexOf("MSIE");	var appVer = "";	if (nVer > 0) {		appVer = "M" + sVer.substring(nVer + 5, nVer + 9);	}	else {		appVer = "N" + sVer.substring(0, 4);	}	if (appVer.charAt(4) == " ") {		appVer = appVer.substring(0, 4) + "0";	}	return appVer;}var appVer = getAppVer();/*****************日期类型************//********************************** zmx 2005.10.06*************************************//*获得系统日期*返回值:*返回系统日期/********************************** zmx 2005.10.06*************************************/function getSysDate() {	var today  = new Date();	var nYear  = today.getYear();	var nMonth = today.getMonth() + 1;	var nDay   = today.getDate();	var sToday = "";	if (nYear < 1000) {		sToday += "" + (1900 + nYear);	}else {		sToday += nYear;	}	if (nMonth < 10) {		sToday += "0" + nMonth;	}else {		sToday += nMonth;	}	if (nDay < 10) {		sToday += "0" + nDay;	}else {		sToday += nDay;	}	return sToday;}/********************************** zmx 2005.10.06*************************************//*校验是否大于系统日期*返回值:*如果校验正确,返回true*如果校验未通过,返回false*参数:str:日期字符串/********************************** zmx 2005.10.06*************************************/function checkAfterDate(str) {	str = convDate(str, "/");//调用convDate()格式化日期yyyymmdd	if (str.length == 6)  str += "01";	if (str <= getSysDate())  return false;//调用getSysDate()提取系统日期	return true;}/********************************** zmx 2005.10.06*************************************//*校验是否等于系统日期*返回值:*如果校验正确,返回true*如果校验未通过,返回false*参数:str:日期字符串/********************************** zmx 2005.10.06*************************************/function checkIsToday(str) {	str = convDate(str, "/");//调用convDate()格式化日期yyyymmdd	if( str.length == 6 )  str += "01";	if( str == getSysDate() ) return true;//调用getSysDate()提取系统日期	return false;}/********************************** zmx 2005.10.06*************************************//*校验是否小于系统日期*返回值:*如果校验正确,返回true*如果校验未通过,返回false*参数:str:日期字符串/********************************** zmx 2005.10.06*************************************/function checkBeforeDate(str) {	str = convDate(str, "/");//调用convDate()格式化日期yyyymmdd	if (str.length == 6)  str += "01";	if (str >= getSysDate())  return false;//调用getSysDate()提取系统日期	return true;}/********************************** zmx 2005.10.06*************************************//*拼接格式化日期,接收年、月、日*返回值:*返回拼接后日期/********************************** zmx 2005.10.06*************************************/function formatDate(sYear, sMonth, sDay) {	if (sMonth.length == 1)  sMonth = "0" + sMonth;	if (sDay.length == 1)  sDay = "0" + sDay;	return sYear + sMonth + sDay;}/********************************** zmx 2005.10.06*************************************//*校验润年*返回值:*如果校验通过,       返回true*如果不是闰年,       返回false    /********************************** zmx 2005.10.06*************************************/function checkLeapYear(year) {	if (((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0))  return true;	return false;}/********************************** zmx 2005.10.06*************************************//*设定日期格式,不带格式,例yyyymmdd*返回值:*返回格式化后的日期/********************************** zmx 2005.10.06*************************************/function convDate(sDate, sSep) {	var pos = 0;	var str = sDate;	var len = str.length;	if ((len < 8) || (len > 10)) {		return str;	}else if (str.indexOf(sSep) == 4) {		pos = str.indexOf(sSep, 5);		if (pos == 6) {			if (len == 8) {				return str.substring(0, 4) + "0" + str.substring(5, 6) + "0" + str.substring(7, 8);			}else {				return str.substring(0, 4) + "0" + str.substring(5, 6) + str.substring(7, 9);			}		}		else if (pos == 7) {			if (len == 9) {				return str.substring(0, 4) + str.substring(5, 7) + "0" + str.substring(8, 9);			}else {				return str.substring(0, 4) + str.substring(5, 7) + str.substring(8, 10);			}		}else {			return str;		}	}else {		return str;	}}/********************************** zmx 2005.10.06*************************************//*设定日期格式,带step格式(-或\),例yyyy-mm-dd*返回值:*返回格式化后的日期/********************************** zmx 2005.10.06*************************************/function formatDate(sDate, sSep) {	var pos = 0;	var str = sDate;	var len = str.length;	if ((len < 8) || (len > 10)) {		return str;	}else if (str.indexOf(sSep) == 4) {		pos = str.indexOf(sSep, 5);		if (pos == 6) {			if (len == 8) {				return str.substring(0, 4) + sSep + "0" + str.substring(5, 6) + sSep + "0" + str.substring(7, 8);			}else {				return str.substring(0, 4) + sSep + "0" + str.substring(5, 6) + sSep + str.substring(7, 9);			}		}else if (pos == 7) {			if (len == 9) {				return str.substring(0, 4) + sSep + str.substring(5, 7) + sSep + "0" + str.substring(8, 9);			}else {				return str.substring(0, 4) + sSep + str.substring(5, 7) + sSep + str.substring(8, 10);			}		}else {			return str;		}	}else {		return str;	}}/********************************** zmx 2005.10.06*************************************//*校验日期是否正确,输入的参数为8位yyyymmdd*返回值:*如果字串为日期型,校验通过,       返回true*如果日期不合法,                   返回false    /********************************** zmx 2005.10.06*************************************/function checkRq(str) {	str = convDate(str, "/");	if ((str.length != 8) || !checkNumnum(str)) return false;	var year  = str.substring(0, 4);	var month = str.substring(4, 6);	var day   = str.substring(6, 8);	dayOfMonth = new Array(31,29,31,30,31,30,31,31,30,31,30,31);	if ((month < 1) || (month > 12)) return false;	if ((day < 1) || (day > dayOfMonth[month - 1])) return false;	if (!checkLeapYear(year) && (month == 2) && (day == 29)) return false;//调用checkLeapYear()校验是否闰年	return true;}/********************************** zmx 2005.10.06*************************************//*校验日期是否正确,输入的参数为10位yyyy-mm-dd*返回值:*如果字串为日期型,校验通过,       返回true*如果日期不合法,                   返回false    *参数:obj:页面对象;msg:字段名称;str:传入日期数值/********************************** zmx 2005.10.06*************************************/function checkDate(obj,msg,str){	if(str == "") return true;//如果为空,则通过校验	var pattern = /^((\d{4})|(\d{2}))-(\d{1,2})-(\d{1,2})$/g;			if(!pattern.test(str)) {//校验格式,如果格式不匹配,返回		alert(msg+"与yyyy-mm-dd格式不匹配");		obj.focus();		return false;	}	var arrDate = str.split("-");		if(parseInt(arrDate[0]) < 100)	arrDate[0] = 2000 + parseInt(arrDate[0]) + "";//支持年份只输入两位数字	//看是否在1900-1-1与2099-12-31之间	var numDate = parseInt(arrDate[0]+((parseInt(arrDate[1])<10)?("0"+parseInt(arrDate[1])):arrDate[1])+""+((parseInt(arrDate[2])<10)?("0"+parseInt(arrDate[2])):arrDate[2])+"");				       				 	if(!((numDate)>=19000101&&(numDate)<=20991231)) {		alert(msg+"超过1900-01-01至2099-12-31的界限");		obj.focus;		return false;		}	if(!CheckDateTime(str+" 00:00:00")){		alert(msg+"不合法");		obj.focus();		return false;	}}//函数名:CheckDateTime //功能介绍:检查是否为日期时间 function CheckDateTime(str){ 	var reg = /^(\d+)-(\d{1,2})-(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/; 	var r = str.match(reg); 	if(r==null)return false; 	r[2]=r[2]-1; 	var d= new Date(r[1], r[2],r[3], r[4],r[5], r[6]); 	if(d.getFullYear()!=r[1])return false; 	if(d.getMonth()!=r[2])return false; 	if(d.getDate()!=r[3])return false; 	if(d.getHours()!=r[4])return false; 	if(d.getMinutes()!=r[5])return false; 	if(d.getSeconds()!=r[6])return false; 	return true;}/********************************** zmx 2005.10.06*************************************//*校验两个日期的先后*返回值:*如果有一个值为空,不用进行比较            返回true*如果其中有一个日期长度不等于8,或,          返回true*如果起始日期早于等于终止日期,校验通过,   返回true*如果起始日期晚于终止日期,                 返回false    /********************************** zmx 2005.10.06*************************************/function compareRq(fromDate,toDate) {	if(fromDate == "") return true;//如果为空,则通过校验	if(toDate == "") return true;//如果为空,则通过校验	if( checkRq(fromDate) == false ) return false;//调用checkRq()判断输入日期是否正确	if( checkRq(toDate) == false ) return false;//调用checkRq()判断输入日期是否正确	fromDate = convDate(fromDate, "/");//调用convDate()格式化日期yyyymmdd	toDate = convDate(toDate, "/");//调用convDate()格式化日期yyyymmdd	if ((fromDate.length != 8) || !checkNumnum(fromDate) || (toDate.length != 8) || !checkNumnum(toDate)) return false;//调用checkNumber()校验输入是否为整数	if(fromDate <= toDate ){		return true;	}else{		return false;	}}/********************************** zmx 2005.10.06*************************************//*校验两个日期的先后*返回值:*如果有一个值为空,不用进行比较            返回true*如果起始日期早于等于终止日期,校验通过,   返回true*如果起始日期晚于终止日期,                 返回false    *参数:obj:页面对象;msg:字段名称;fromDate、toDate:传入日期数值;step:代表比较的符号/********************************** zmx 2005.10.06*************************************/function compareDate(obj1,msg1,fromDate,obj2,msg2,toDate,step) {	if(fromDate == "") return true;//如果为空,则通过校验	if(toDate == "") return true;//如果为空,则通过校验	if( checkDate(obj1,msg1,fromDate) == false ) return false;//调用checkDate()判断输入日期是否正确	if( checkDate(obj2,msg2,toDate) == false ) return false;//调用checkDate()判断输入日期是否正确	fromDate = formatDate(fromDate, "-");//调用formatDate()格式化日期yyyy-mm-dd	toDate =  formatDate(toDate, "-");//调用formatDate()格式化日期yyy-ymm-dd	if ((fromDate.length != 10) || (toDate.length != 10) ) {		alert("日期不合法");		return false;//调用checkNumber()校验输入是否为整数	}	switch(step){		case "<=":			if(fromDate <= toDate ){				return true;			}else{				alert(msg2+"应大于"+ msg1 );				return false;			}			break;		case "<":			if(fromDate < toDate ){				return true;			}else{				alert(msg2+"不应小于"+ msg1 );				return false;			}			break;		default:				break;	}}/********************************** zmx 2005.10.06*************************************//*比较日期字符串*返回值:*如果dateStr1大于dateStr2,返回1*如果dateStr1等于dateStr2,返回0*如果dateStr1小于dateStr2,返回-1*如果dateStr1日期格式不对,直接返回dateStr1/********************************** zmx 2005.10.06*************************************///比较日期字符串function compareDateStr(dateStr1,dateStr2) {	dateStr1 = convDate(dateStr1,"/");  	dateStr2 = convDate(dateStr2,"/");  	if (dateStr1 > dateStr2) {    	return 1;  	}else if (dateStr1 == dateStr2) {    	return 0;  	}else {    	return -1;  	}  	return dateStr1}/********************************** zmx 2005.10.06*************************************//*设定日期格式,添加“-”符号,例yyyy-mm-dd,  *返回值:*返回格式化后的日期/********************************** zmx 2005.10.06*************************************/function changeAddDate(sDate, sSep) {	var str_date = formatDate(sDate, sSep);	return str_date.substring(0, 4) + sSep + str_date.substring(4, 6) + sSep + str_date.substring(6, 8);}/*****************数值类型************//********************************** zmx 2005.10.06*************************************//*校验字符串是否为整型*返回值:*如果字串全部为数字,校验通过,返回true*如果校验不通过,              返回false     

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -