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

📄 checkimp.js

📁 很全面的hrm管理。提供通用的企业人力资源管理。
💻 JS
📖 第 1 页 / 共 2 页
字号:
function checkValidate(CheckElement){
	if(!CheckElement.dataType){
		return;
	}
	var errMess = "";
	sIfNull			=	CheckElement.dataType.substring(0,2);
	sOther			=	CheckElement.dataType.substring(2,CheckElement.dataType.length);
	var CheckdataType;
	if(sIfNull=="非空"){
		CheckdataType		=	sOther;
	}
	else{
		CheckdataType		=	CheckElement.dataType;
	}
	if(CheckElement.value!=""){
		if(CheckdataType	==	""){
			return;
		}
		switch(CheckdataType){
			//可选属性:maxLength,minLength
			case '字符串':		errMess = checkString(CheckElement);break;
			case '邮政编码':	errMess = checkPost(CheckElement);break;
			//可选属性:maxValue,minValue
			case '数字':		errMess = checkNumber(CheckElement);break;
			//可选属性:maxValue,minValue
			case '百分比':		errMess = checkPercent(CheckElement);break;
			//可选属性:maxValue,minValue
			case '整数':		errMess = checkInt(CheckElement);break;
			//可选属性:maxValue,minValue
			case '正整数':		errMess = checkPlusInt(CheckElement);break;

			//样式:2006-12-12
			case '日期':		errMess = checkDate(CheckElement);break;
			//样式:2006-12
			case '年月日期':	errMess = checkYearMonth(CheckElement);break;
			//样式:2006-12-12 12:00:00
			case '时刻':		errMess = checkDateTime(CheckElement);break;
			//样式:2006-12-12 12:00
			case '日期时分':	errMess = checkDateMinute(CheckElement);break;
			//样式:12:00
			case '时分':		errMess = checkMinute(CheckElement);break;
			//样式:12:00:00
			case '日期时间':	errMess = checkTime(CheckElement);break;

			//样式:192.168.0.1
			case 'IP地址':		errMess = checkIP(CheckElement);break;
			case 'Email':		errMess = checkEmail(CheckElement);break;
			case '电话':		errMess = checkPhone(CheckElement);break;
			//样式:13000000000
			case '手机':		errMess = checkMobilephone(CheckElement);break;
			//可选属性:maxValue,minValue
			case '货币':		errMess = checkCurrency(CheckElement);break;

			case '下拉列表':	errMess = checkSelect(CheckElement);break;
			case '单选按钮':	errMess = checkRadio(CheckElement);break;
			//可选属性:maxSelect,minSelect
			case '复选框':		errMess = checkCheckbox(CheckElement);break;

			//可选属性:fileType(如:"xml,doc,htm"),maxSize(如:"3")单位为M
			case '文件选择':	errMess = checkFileSelect(CheckElement);break;
			default:alert('暂时不能识别:'+CheckElement.dataType+'的数据类型');
		}
	}
	var eleErrMsg = CheckElement.nextSibling;
	if(eleErrMsg && eleErrMsg.name == "ErrMsg" ){
		if(errMess != "" ){
			errMess = "<img src='../images/error_m.gif' valign='top'/> " + errMess;			
		}
		eleErrMsg.innerHTML = "<br/>" + errMess;
	}else{
		var eleErrMsg = document.createElement("span");
		eleErrMsg.name = "ErrMsg";
		if(errMess != "" ){
			errMess = "<img src='../images/error_m.gif' valign='top'/> " + errMess;			
		}
		eleErrMsg.innerHTML = "<br/>" + errMess;
		CheckElement.insertAdjacentElement('afterEnd', eleErrMsg);
	}
	return true;			
}
function getLength(str){
  return str.replace(/[^\x00-\xff]/g,"**").length;
}
function checkFileSelect(ele){
	var matchFile=false;
	matchFile = new RegExp("^.+\.(?=EXT)(EXT)$".replace(/EXT/g, ele.fileType.split(/\s*,\s*/).join("|")), "gi").test(ele.value);
	if(matchFile==false){
		return "文件类型应为:"+ele.fileType;
	}
	var fso = new ActiveXObject("Scripting.FileSystemObject");
	fileName = fso.FileExists(ele.value);
	if (!fileName){
		return "文件'"+ele.value+"'不存在";
	}
	else if(ele.maxSize){
		var f=fso.GetFile(ele.value);  
		var fileSize = new Number(f.size);  
		var maxSize = new Number(ele.maxSize);
		if(fileSize>maxSize*1024*1024){
			return "文件大小不能够超过"+ele.maxSize+"M";
		}
	}
	return "";
}
function checkSelect(ele){
	if(ele.value&&ele.value!=""){
		return "";
	}
	return "请您选择"+ele.dispName;
}
function checkRadio(ele){
	for(var i=0;i<document.getElementsByName(ele.name).length;i++){
		if(document.getElementsByName(ele.name)[i].checked){
			return "";
		}
	}
	for(var i=1;i<document.getElementsByName(ele.name).length;i++){
		if(document.getElementsByName(ele.name)[i].dataType){
			document.getElementsByName(ele.name)[i].dataType="";
		}
	}	
	return "请您选择"+ele.dispName;
}
function checkCheckbox(ele){
	var selectedNumber=0;
	var minSelect =1;
	var maxSelect =document.getElementsByName(ele.name).length;
	for(var i=0;i<document.getElementsByName(ele.name).length;i++){
		if(document.getElementsByName(ele.name)[i].checked){
			selectedNumber++;
		}
	}
	for(var i=1;i<document.getElementsByName(ele.name).length;i++){
		if(document.getElementsByName(ele.name)[i].dataType){
			document.getElementsByName(ele.name)[i].dataType="";
		}
	}	
	if(ele.maxSelect){
		maxSelect = new Number(ele.maxSelect);
	}
	if(ele.minSelect){
		minSelect = new Number(ele.minSelect);
	}
	if(selectedNumber>=minSelect&&selectedNumber<=maxSelect){
		return "";
	}
	else if(ele.minSelect&&ele.maxSelect){
		return "请您选择"+minSelect+"~"+maxSelect+"项";
	}
	else if(ele.minSelect){
		return "请您选择"+minSelect+"条记录";
	}
	else if(ele.maxSelect){
		return "请最多选择"+maxSelect+"项";
	}
	else{
		return "请您选择"+minSelect+"~"+maxSelect+"项";
	}
}
function alertRightDate(){
	bCheckLock	=	false;
	return("格式应为2000/12/21");
}
function checkDate(ele){
	var ev		=	ele.value;
	var evyear;
	var evmonth;
	var evdate;
	var iindex;
	if(ev.length<8){
		return alertRightDate();
		//ele.value="";
	}
	iindex		=	ev.indexOf("/")
	if(iindex==-1){
		return alertRightDate();
		//ele.value="";
	}
	evyear		=	ev.substring(0,iindex);
	if (evyear.length != 4){
		return alertRightDate();
	}
	ev			=	ev.substring(iindex+1,ev.length);
	iindex		=	ev.indexOf("/")
	if(iindex==-1){
		return alertRightDate();
		//ele.value="";
	}
	evmonth		=	ev.substring(0,iindex);
	if (evmonth.length >2){
		return alertRightDate();
	}
	evdate		=	ev.substring(iindex+1,ev.length);
	if (evdate.length >2){
		return alertRightDate();
	}
	var ndate	=	evmonth+"/"+evdate+"/"+evyear;
	var tdate	=	Date.parse(ndate);
	var ddate	=	new Date(tdate);
	if(isNaN(tdate)){
		return alertRightDate();
	}
	if(	(evyear!=ddate.getFullYear()	)||(evmonth!=(ddate.getMonth()+1)	)||(evdate!=ddate.getDate())	){
		return alertRightDate();
	}
	return "";
}
function checkYearMonth(ele){
	var ev		=	ele.value;
	var evyear;
	var evmonth;
	var iindex;
	if(ev.length<6){
		return alertRightYearMonthDate();
		//ele.value="";
	}
	iindex		=	ev.indexOf("-")
	if(iindex==-1){
		return alertRightYearMonthDate();
		//ele.value="";
	}
	evyear		=	ev.substring(0,iindex);
	if (evyear.length != 4){
		return alertRightYearMonthDate();
	}
	ev			=	ev.substring(iindex+1,ev.length);
	evmonth		=	ev;
	if (evmonth.length >2){
		return alertRightYearMonthDate();
	}

	var ndate	=	evmonth+"/"+"01"+"/"+evyear;
	var tdate	=	Date.parse(ndate);
	var ddate	=	new Date(tdate);
	if(isNaN(tdate)){
		return alertRightYearMonthDate();
		//ele.value="";
	}
	if(	(evyear!=ddate.getFullYear()	)||(evmonth!=(ddate.getMonth()+1))){
		return alertRightYearMonthDate();
		//ele.value="";
	}
	return "";
}
function alertRightYearMonthDate(){
	bCheckLock = false;
	return "格式:2003-6";
}
function alertDateTime(){
	bCheckLock = false;
	return "格式:2003-6-1 12:00:00";
}
function alertDateMinute(){
	bCheckLock = false;
	return "格式:2003-6-1 12:00";
}
function alertTime(){
	bCheckLock = false;
	return "格式:12:00:00";
}
/* 检查DateTime类型是否满足"yyyy-mm-dd MM-mm-ss"形式. */
function checkDateTime(ele){
	var str = ele.value;
	if (str.length < 14) {
		return alertDateTime();
	}
	var iSpc = str.indexOf(" ");
	if (iSpc == -1) {
		return alertDateTime();
	}
	
	var ev = str.substring(0, iSpc);
	var et = str.substring(iSpc + 1, str.length);
	var idx;
	var evyear, evmonth, evdate;
	var hour, minute, second;
	
	idx = ev.indexOf("-");
	if (idx == -1) {
		return alertDateTime();
	}
	
	evyear = ev.substring(0, idx);
	if (evyear.length != 4)	{
		return alertDateTime();
	}
	ev = ev.substring(idx + 1, ev.length);
	idx = ev.indexOf("-");
	if (idx == -1) {
		return alertDateTime();
	}
	
	evmonth		=	ev.substring(0,idx);
	if (evmonth.length >2){
		return alertDateTime();
	}
	evdate		=	ev.substring(idx+1,ev.length);
	if (evdate.length >2){
		return alertDateTime();
	}
	var ndate	=	evmonth + "/" + evdate + "/" + evyear;
	var tdate	=	Date.parse(ndate);
	var ddate	=	new Date(tdate);
	if(isNaN(tdate)) {
		return alertDateTime();
	}
	
	if ((evyear != ddate.getFullYear()) || (evmonth != (ddate.getMonth() + 1)) || (evdate != ddate.getDate())) {
		return alertDateTime();
	}
	
	idx = et.indexOf(":");
	if (idx == -1) {
		return alertDateTime();
	}
	
	hour = et.substring(0, idx);
	et = et.substring(idx + 1, et.length);
	var hr = new Number(hour);
	if (isNaN(hr)) {
		return alertDateTime();
	} else {
		if (hr < 0 || hr > 24) {
			return alertDateTime();
		}
	}
	
	idx = et.indexOf(":");
	if (idx == -1) {
		return alertDateTime();
	}

	minute = et.substring(0, idx);
	second = et.substring(idx + 1, et.length);

	mint = new Number(minute);
	sec = new Number(second);
	if (isNaN(mint) || isNaN(sec)) {
		return alertDateTime();
	} else {
		if (mint < 0 || mint > 59 || sec < 0 || sec > 59) {
			return alertDateTime();
		}
	}
	
	return "";
}
function checkTime(ele){
	var str = ele.value;
	if (str.length < 5) {
		return alertTime();
	}
	if (str.length > 8) {
		return alertTime();
	}
	var idx = str.indexOf(":");
	if (idx == -1) {
		return alertTime();
	}
	var hour = str.substring(0, idx);
	if(hour=="")	{
		return alertTime();
	}	
	var et = str.substring(idx + 1, str.length);
	var hr = new Number(hour);
	if (isNaN(hr)) 	{
		return alertTime();
	} 	else 	{
		if (hr < 0 || hr > 23) 		{
			
			return alertTime();
		}
	}
	idx = et.indexOf(":");
	if (idx == -1) {
		return alertTime();
	}

	var minute = et.substring(0, idx);
	if(minute=="")	{
			return alertTime();
	}	
	var second = et.substring(idx + 1, et.length);
	if(second=="")	{
			return alertTime();
	}	
	var mint = new Number(minute);
	var sec = new Number(second);
	if (isNaN(mint) || isNaN(sec)) {
		return alertTime();
	} else {
		if (mint < 0 || mint > 59 || sec < 0 || sec > 59) {
			return alertTime();
		}
	}
	
	return "";
}
function checkNumber(ele){
	var elevalue	=	new Number(ele.value);
	if(isNaN(elevalue))	{
		bCheckLock	=	false;
		return("只能输入数字"); 
	}
	ele.value=elevalue;
	if(ele.maxValue)	{
		return(checkmaxValue(ele));
	}
	if(ele.minValue)	{
		return(checkminValue(ele));
	}
	return "";
}
function checkCurrency(ele){
	var elevalue	=	new Number(ele.value);
	if(isNaN(elevalue))	{
		bCheckLock	=	false;
		return("只能输入数字"); 
	}
	if(elevalue<0)	{
		bCheckLock	=	false;
		return("不能输入负数"); 
	}		
	var tempnum=elevalue;
	if(ele.value.indexOf(".")>=0)	{
		var su=ele.value.indexOf(".");
		var s=ele.value.substring(su+1);
		if(s.length>2)	{
			var res="只能输入两位小数";
			return(res); 
		}
		else if (s.length == 1)	{
			ele.value=ele.value+"0";
		}
		else if(s.length==0){
			ele.value=ele.value+"00";
		}
	}	
	else{
		ele.value=tempnum+".00";
	}
	if(ele.maxValue){
		var res = checkmaxValue(ele);
		if(res != ""){

⌨️ 快捷键说明

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