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

📄 check-js.js

📁 一个完整的办公资源管理系统
💻 JS
📖 第 1 页 / 共 2 页
字号:
	if (ele.value == "")
		return "";	
	var elevalue	=	new Number(ele.value);
	if(isNaN(elevalue))
	{
		return "只能输入正整数";
	}
	if(ele.value.indexOf(".")!=-1)
	{
		return "只能输入正整数";
	}
	if(elevalue <=  0)
	{
		return "只能输入正整数";
	}
	
	ele.value=elevalue;
	if(ele.maxValue)
	{
		return(checkmaxValue(ele));
	}
	if(ele.minValue)
	{
		return(checkminValue(ele));
	}
	return "";
}

//add by wlb 04/12/27 (大于0的正整数)
function checkPlusTime(ele)
{
	if (ele.value == "")
		return "";	
	var elevalue	=	new Number(ele.value);
	if(isNaN(elevalue))
	{
		return "只能输入正整数";
	}
	if(ele.value.indexOf(".")!=-1)
	{
		return "只能输入正整数";
	}
	if(elevalue <  0)
	{
		return "只能输入正整数";
	}
	
	ele.value=elevalue;
	if(ele.maxValue)
	{
		return(checkmaxValue(ele));
	}
	if(ele.minValue)
	{
		return(checkminValue(ele));
	}
	return "";
}

/*
  检查DateTime类型是否满足"hh:mi"形式.
*/
function checkMinute(checkEle){
	//alert("enter");
	var str = checkEle.value;
	if (str == "")
		return "";		
	//alert(str.length);
	if((str.length!=5)&&(str.length!=4))
	{		
		//alert("1");
		return alertMinute();
	}
	//alert("conti");
	var idx = str.indexOf(":");
	if (idx != 2){
		if(idx !=1)
			return alertMinute();
	}
	var h = str.substring(0,idx);
	var m = str.substring(idx+1,str.length);
	
	h = new Number(h);
	m = new Number(m);
	if(isNaN(h)){
		return alertMinute();
	}else{
		if(h < 0 || h > 23)
			return alertMinute();
	}
	
	if(isNaN(m)){
		return alertMinute();
	}else{
		if(m <0 || m >59)
			return alertMinute();
	}
	return "";
}

function alertMinute()
{
	//alert("alertMinute");
	bCheckLock = false;
	return "格式:12:00";
}

/*
  时间格式这能写道分钟
  检查DateTime类型是否满足"yyyy-mm-dd hh-mm"形式.
*/
function checkDateMinute(ele)
{
	var str = ele.value;
	if (str == "")
		return "";		
	if (str.length < 12) 
	{
		return alertDateMinute();
	}
	var iSpc = str.indexOf(" ");
	if (iSpc == -1) {
		return alertDateMinute();
	}
	
	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 alertDateMinute();
	}
	
	evyear = ev.substring(0, idx);
	if (evyear.length != 4)
	{
		return alertDateMinute();
	}
	ev = ev.substring(idx + 1, ev.length);
	idx = ev.indexOf("-");
	if (idx == -1) {
		return alertDateMinute();
	}
	
	evmonth		=	ev.substring(0,idx);
	if (evmonth.length >2)
	{
		return alertDateMinute();
	}
	evdate		=	ev.substring(idx+1,ev.length);
	if (evdate.length >2)
	{
		return alertDateMinute();
	}
	var ndate	=	evmonth + "/" + evdate + "/" + evyear;
	var tdate	=	Date.parse(ndate);
	var ddate	=	new Date(tdate);
	if(isNaN(tdate)) {
		return alertDateMinute();
	}
	
	if ((evyear != ddate.getFullYear()) || (evmonth != (ddate.getMonth() + 1)) || (evdate != ddate.getDate())) {
		return alertDateMinute();
	}
	
	idx = et.indexOf(":");
	if (idx == -1) 
	{
		return alertDateMinute();
	}
	
	hour = et.substring(0, idx);
	et = et.substring(idx + 1, et.length);
	var hr = new Number(hour);
	if (isNaN(hr)) 
	{
		return alertDateMinute();
	} else 
		{
		if (hr < 0 || hr >= 24) {
			return alertDateMinute();
		}
	}
	
	/*
	idx = et.indexOf(":");
	if (idx == -1) {
		return alertDateMinute();
	}
	*/
	minute = et;
	//minute = et.substring(0, idx);//这样可以加秒
	//second = et.substring(idx + 1, et.length);

	mint = new Number(minute);
	//sec = new Number(second);
	if (isNaN(mint)) 
	{
		return alertDateMinute();
	} else 
	{
		if (mint < 0 || mint > 59) 
		{
			return alertDateMinute();
		}
	}
	
	return "";
}


function checkPercent(ele)
{
	if (ele.value == "")
		return "";		
	var elevalue	=	new Number(ele.value);
	if(isNaN(elevalue)||(elevalue<0)||(elevalue>100))
	{
		bCheckLock	=	false;
		return "必须是0到100之间数字";
	}
	ele.value=elevalue;
	if(ele.maxValue)
	{
		return(checkmaxValue(ele));
	}
	if(ele.minValue)
	{
		return(checkminValue(ele));
	}
	return true;
}

function checkString(ele)
{
	if (ele.value == "")
		return "";		
	//暂时规定字符串内不能包含单引号以及双引号,如果找到了清空此输入框
	if(ele.value.indexOf("'")!=-1)
	{
		bCheckLock	=	false;
		return('不能包含单引号');
	}
	if(ele.value.indexOf("\"")!=-1)
	{
		bCheckLock	=	false;
		return('不能包含双引号');
	}
	var regobj	=	/\s+$/g;
	var s_end	=	(ele.value).replace(regobj,'');
	var regobjb	=	/^\s+/g;
	ele.value	=	(s_end).replace(regobjb,'');
	return "";
}

function checkLongString(ele)
{
	if (ele.value == "")
		return "";		
	//暂时规定长字符串内不能包含单引号以及双引号,如果找到了,去处这些单引号和双引号
	if(ele.value.indexOf("'") != -1)
	{
		return "不能包含单引号";
	}
	if(ele.value.indexOf("\"") != -1)
	{
		return "不能包含双引号";
	}

	if(ele.maxL)
	{
		if(ele.value.length>ele.maxL)
		{
			return "最大长度:" + ele.maxL;
		}
	}
	var regobj	=	/\s+$/g;
	var s_end	=	(ele.value).replace(regobj,'');
	var regobjb	=	/^\s+/g;
	ele.value	=	(s_end).replace(regobjb,'');
	return "";
}


function alertRightPost()
{
	bCheckLock	=	false;
	return "格式:710043";
}

function checkPost(ele)
{
	if (ele.value == "")
		return "";		
	if(ele.value.length != 6)
	{
		return alertRightPost();
	}
	
	var num	=	new Number(ele.value);
	
	if(isNaN(num))
	{
		return alertRightPost();
	}
	
	if(num < 0)
	{
		return alertRightPost();
	}
	
	if(ele.value.indexOf(".")!=-1)
	{
		return alertRightPost();
	}
	return "";
}


function alertRightPhone()
{
	bCheckLock	=	false;
	return "格式:029-12345678";
}


function checkPhone(ele)
{
	var ev	=	ele.value;
	if (ev == "")
		return "";			
	//检测长度是否足够
	if(ev.length<7)
	{
		return alertRightPhone();
	}
	//检测长度是否超过限制
	if(ev.length>20)
	{
		return alertRightPhone();
	}
	//检测是否含有非法字符
	if(	(ev.indexOf("'")!=-1)||(ev.indexOf("\"")!=-1))
	{
		return alertRightPhone();
	}
	//允许出现两次"("号,两次")"号,两次"-"号,一次","号,一次";"号
	//其余的必须为数字
	var re = "(";
	var sTemp = ev.replace(re, "" );
	re =")";
	sTemp = sTemp.replace(re, "" );
	re = "-";
	
	sTemp = sTemp.replace(re, "");
	
	re = "(";
	var sTemp = sTemp.replace(re, "" );
	re =")";
	sTemp = sTemp.replace(re, "" );
	re = "-";
	
	sTemp = sTemp.replace(re, "");
	
	re = ",";
	sTemp = sTemp.replace( re, "" );
	re = ";";
	sTemp = sTemp.replace( re, "" );
	
	var elevalue	=	new Number(sTemp);
	if( isNaN(elevalue) )
	{
		return alertRightPhone();
	}
	return "";
}


//added by wlb at 2002-08-12
function checkMobilephone(ele)
{
	if (ele.value == "")
		return "";		
	if (ele.value.length !== 11) 
	{
		return "手机号码应为11位!";
	}
	var elevalue	=	new Number(ele.value);
	if( isNaN(elevalue) )
	{
		return "手机号码必须是数字!";
	}
	if (ele.value.substring(0,2) != '13') 
	{
		return "输入的不是手机号码";
	}
	return "";
}

function alertRightIP()
{
	bCheckLock	=	false;
	return "格式:192.168.0.1";
}

function checkIP(ele)
{
	if (ele.value == "")
		return "";	
	//add by wlb 修改了ip验证代码
	try
	{
		var sReturn = "";
		var evalue = ele.value;
		var arrEvalue = evalue.split(".");
		if(arrEvalue.length != 4)
		{
			sReturn = alertRightIP();
		}
		else
		{
			for(var i = 0;i < arrEvalue.length;i++)
			{
				var ipNum = new Number(arrEvalue[i]);
				if(isNaN(ipNum) || ipNum - 0 < 0 || ipNum - 255 > 0)
				{
					sReturn = alertRightIP();
					break;
				}
			}
		}
		return sReturn;
	}
	catch(e)
	{
		return alertRightIP();
	}
	/*
	try{
		var ev	=	ele.value;
		for(i=0;i<3;i++)
		{
			var ii	=	ev.indexOf(".");
			if(ii<=0)
			{
				return alertRightIP();
			}
			var ippart	=	ev.substring(0,ii);
			var re	= / /g;
			ippart=ippart.replace(re,'');
			if(ippart.length==0)
			{
				return alertRightIP();
			}
			var nippart	=	new Number(ippart);
			if(isNaN(nippart))
			{
				return alertRightIP();
			}
			if (	(nippart<0)	||	(nippart>255)	|| ippart.length>3)
			{
				return alertRightIP();
			}
			ev	=	ev.substring(ii+1,ev.length);
		}
		var nn	=	ev.indexOf(".");
		if(nn>=0)
		{
				return alertRightIP();
		}
		var re	= / /g;
		ev=ev.replace(re,'');
		if(ev.length==0)
		{
				return alertRightIP();
		}
		var nev	=	new Number(ev);
		if(isNaN(nev))
		{
				return alertRightIP();
		}
		if (	(nev<0)	||	(nev>255)	|| ev.length>3	)
		{
				return alertRightIP();
		}
		return "";
	}catch(e)
	{
		return alertRightIP();
	}
	*/
}


function checkEmail(ele)
{
	if (ele.value == "")
		return "";	
	var index = ele.value.indexOf("@");
	if(index < 0)
	{
		return "错误的Email格式";
	}
	
	if(ele.value.indexOf("@",index+1) != -1)
	{
		return "错误的Email格式";
	}

	if(ele.value.length < 6 ) 
	{
		return "错误的Email格式!";
	}
	var iDot;
	var sTail;
	iDot = ele.value.lastIndexOf(".");
	sTail = ele.value.substring(iDot, ele.value.length);
	sTail = sTail.toLowerCase();
	if (!(sTail == ".cn" || sTail == ".com" || sTail == ".net" || sTail == ".org" || sTail == ".edu")) 
	{
		return "错误的Email格式!";
	}
	return "";
}

function CheckAll(ifCheckNull, eles)
{

	var errMsg = "";
	for(i=0;i<eles.length;i++)
	{
		
		if(eles[i].dataType)
		{
			
			var errMess = "";
			var CheckElement = eles[i];
			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 !=	"")
				{
					switch(CheckdataType)
					{
						case '字符串': errMess = checkString(CheckElement);break;
						case '邮政编码': errMess = checkPost(CheckElement);break;
						case '长字符串': errMess = checkLongString(CheckElement);break;
						case '数字': errMess = checkNumber(CheckElement);break;
						case '百分比': errMess = checkPercent(CheckElement);break;
						case '整数': errMess = checkInt(CheckElement);break;
						//add by wlb 03/08/27
						case '正整数': errMess = checkPlusInt(CheckElement);break;
						case '日期': errMess = checkDate(CheckElement);break;
						//add by wlb 04/04/21
						case '日期时分': errMess = checkDateMinute(CheckElement);break;
						
						case '年月日期': errMess = checkYearMonth(CheckElement);break;
						
						case '时分': errMess = checkMinute(CheckElement);break;
						case '时刻': errMess = checkDateTime(CheckElement);break;
						case 'IP地址': errMess = checkIP(CheckElement);break;
						case 'Email': errMess = checkEmail(CheckElement);break;
						case '电话': errMess = checkPhone(CheckElement);break;
						case '手机': errMess = checkMobilephone(CheckElement);break;
						case '日期时间': errMess = checkTime(CheckElement);break;
						case '工期': errMess = checkPlusTime(CheckElement);break;
						case '货币':errMess = checkCurrency(CheckElement);break;
						default:alert('暂时不能识别:'+CheckElement.dataType+'的数据类型');
					}
				}
			}
		
			if(ifCheckNull)
			{
				
				if(CheckElement.value == "" && CheckElement.dataType.substring(0,2)=="非空")
				{
					errMess = "必须填写;";
				}
			
			}
			//alert(errMess);
			if(errMess != "")
			{
				var disName = CheckElement.dispName;
				//alert(disName);
				/*
				if(CheckElement.dispName)
				{
					disName = CheckElement.dispName;
				}
				*/
				errMsg = errMsg + "<br/>" + disName + ":" + errMess;
				
			}
		}
	}
	return errMsg;
}

//功能:扩展日期函数,支持YYYY-MM-DD或YYYY-MMDD hh:mm:ss字符串格式
//返回:如果正确,则返回javascript中支持UTC日期格式,如果错误,则返回false  
//日期:2004-12-15
//举例: var myDate = Date_Ex("2004-12-21 23:01:00"); //返回正确的日期
//       var myDate = Date_Ex("2004-12-21");     //返回正确的日期
//       var myDate = Date_Ex("2004-23-12 12:60:29");//返回false,且提示日期或时间超出有效范围
function Date_Ex(value1)
{
 var strDate = value1;
 if (strDate.length == 0)
  return false;

 //先判断是否为短日期格式:YYYY-MM-DD,如果是,将其后面加上00:00:00,转换为YYYY-MM-DD hh:mm:ss格式
 var reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})/;   //短日期格式的正则表达式
 var r = strDate.match(reg);

 if (r != null)   //说明strDate是短日期格式,改造成长日期格式
   strDate = strDate + " 00:00:00";
 
 reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})/;
 r = strDate.match(reg);
 if (r == null)
 {
  alert("你输入的日期格式有误,正确格式为:2004-12-01 或 2004-12-01 12:23:45");
  return false;
 }

 var d = new Date(r[1], r[3]-1,r[4],r[5],r[6],r[7]);
 if (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]&&d.getHours()==r[5]&&d.getMinutes()==r[6]&&d.getSeconds()== r[7])
 {
  return d;
 }
 else
 {
  alert("你输入的日期或时间超出有效范围,请仔细检查!");
  return false;
 }
}

⌨️ 快捷键说明

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