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

📄 checkvalue.js

📁 本源码为教学管理信息系统
💻 JS
📖 第 1 页 / 共 3 页
字号:
*返回处理后的字符串/********************************** zmx 2005.10.06*************************************/function replaceStr(str, sFnd, sRep) {	var sTmp = "";   	var endIndex = 0;  	var beginIndex = 0;   	var len = sFnd.length;  	while (endIndex >= 0) {    	endIndex = str.indexOf(sFnd ,beginIndex);    	if (endIndex >= 0) {      		sTmp += str.substring(beginIndex, endIndex) + sRep;       		beginIndex = endIndex + len;    	}else if (beginIndex >= 0) {       		sTmp += str.substring(beginIndex);      		break;    	}  	}  	return sTmp;}/********************************** zmx 2005.10.06*************************************//*替换字符串中的逗号 *返回值:*返回处理后的字符串/********************************** zmx 2005.10.06*************************************/function replaceCommas(str) {	if (str == "")  return str;	str = replaceStr(str, "'", "'");	str = replaceStr(str, '"', '"');	return str;}/********************************** zmx 2005.10.06*************************************//*校验输入内容中特殊符号*返回值:*如果通过,返回true*如果校验未通过,返回false/********************************** zmx 2005.10.06*************************************/function checkEngNum(str) {	if( str == null || str == "" ) return true;	var c = new RegExp();	c = /^[\d|a-zA-Z]+$/;	if (c.test(str)){		return true;	}else{		return false;	}}/********************************** zmx 2005.10.06*************************************//*校验电话号码是否正确*返回值:*如果校验未通过,返回false*如果校验通过,返回true/********************************** zmx 2005.10.06*************************************/function checkPhone(str) {	if( str == null || str == "" ) return true;	var i = str.indexOf("--");	var len = str.length;	if (i >= 0)  return false;	i = str.indexOf("-");	if ((i == 0) || (i == len - 1)) {		return false;	}else if (i > 0) {		i = str.lastIndexOf("-");       	if (i == len - 1)  return false;		str = removeChar(str, "-");	}	if (!checkNumnum(str)) {		return false;	}else {		return true;	}}/********************************** zmx 2005.10.06*************************************//*校验字符串是否为email型*返回值:*如果为空,定义校验通过,           返回true*如果字串为email型,校验通过,      返回true*如果email不合法,                  返回false    参考提示信息:Email的格式不正確!/********************************** zmx 2005.10.06*************************************/function checkEmail(str){     var i;    var len = str.length;    if(str == "") return true; //如果为空,则通过校验 	var chkStr = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890-_@.";	if ((str.indexOf("@") <= 0) || (str.indexOf("@") == len - 1) || (str.indexOf(".") == len - 1) ||	(str.indexOf("@.") > 0) || (str.indexOf(".@") > 0) || (str.charAt(len - 1) == "@") || (str.charAt(len - 1) == ".") || (str.indexOf("@@") > 0) || (str.indexOf("..") > 0)) {		return false;	}	if (str.indexOf("@", str.indexOf("@") + 1) > 0) return false;    for (i = 0; i < len; i++) {    	if (chkStr.indexOf(str.charAt(i)) < 0) return false;    }	return true;}/********************************** zmx 2005.10.06*************************************//*校验IP地址格式 *参数:ip:ip地址值*返回值:*如果校验未通过,返回false*如果校验通过,返回正确ip地址/********************************** zmx 2005.10.06*************************************/function checkip(ip){ 	var scount=0; 	var iplength = ip.length; 	var Letters = "1234567890."; 	for (i=0; i < ip.length; i++){ 		var CheckChar = ip.charAt(i); 		if (Letters.indexOf(CheckChar) == -1){ 		    alert ("IP地址格式不对!!,只能输入数字和“.”,格式为XXX.XXX.XXX.XXX 例如:192.168.0.1");	    	return false; 		} 	} 	for (var i = 0;i<iplength;i++) 		(ip.substr(i,1)==".")?scount++:scount; 	if(scount!=3){ 		alert ("IP地址格式不对!,只能输入数字和“.”,格式为XXX.XXX.XXX.XXX 例如:192.168.0.1"); 		return false; 	} 	first = ip.indexOf("."); 	last = ip.lastIndexOf("."); 	str1 = ip.substring(0,first); 	subip = ip.substring(0,last); 	sublength = subip.length; 	second = subip.lastIndexOf("."); 	str2 = subip.substring(first+1,second); 	str3 = subip.substring(second+1,sublength); 	str4 = ip.substring(last+1,iplength); 		if (str1=="" || str2=="" ||str3== "" ||str4 == ""){		alert("数字不能为空!格式为XXX.XXX.XXX.XXX 例如:192.168.0.1"); 		return false; 	}	if (str1 < 0 || str1 > 255 || str2 < 0 || str2 > 255 ||str3< 0 || str3 >255 ||str4< 0 || str4 >255){		alert ("数字范围为0~255!"); 		return false; 	}	if(str1.length==1) str1="00"+str1;	if(str1.length==2) str1="0"+str1;	if(str2.length==1) str2="00"+str2;	if(str2.length==2) str2="0"+str2;	if(str3.length==1) str3="00"+str3;	if(str3.length==2) str3="0"+str3;	if(str4.length==1) str4="00"+str4;	if(str4.length==2) str4="0"+str4;		return str1+"."+str2+"."+str3+"."+str4;	} /********************************** zmx 2005.10.06*************************************//*过滤页面上的空格*参数:oFrm:传入要处理的form*将form中的值全部过滤掉空格/********************************** zmx 2005.10.06*************************************/function trimItems(oFrm) {	var i = 0;	var type = "";	for (i=0; i<oFrm.elements.length; i++) {		type = oFrm.elements[i].type;		if ((type == "text") || (type == "textarea")) {			oFrm.elements[i].value = trim(oFrm.elements[i].value);		}	}}/********************************** zmx 2005.10.05*************************************//*去掉空格*参数:str:传入的参数值*返回过滤后的参数值/********************************** zmx 2005.10.05*************************************/function trimNull(str){	var len = str.length ;	var i= 0 ;	var j = len-1 ;	for(;i<len;i++){    	if (str.charAt(i)==' ') {    		continue;    	}else{    		break;                                 	}                	}        	if (i==len) return ''; //全是空格          	for(;j>i;j--)  {     	if (str.charAt(j)==' ') {    		continue;    	}else{    		break;                                 	}  	}   	return str.substring(i,j+1);}/********************************** zmx 2005.10.05*************************************//*必须录入校验*参数:obj:界面的对象,用于setfocus用;msg:传入错误的提示信息*返回值:*如果为空,返回false*如果校验通过    返回true/********************************** zmx 2005.10.05*************************************/function checkIsNull(obj,msg){	if (trimNull(obj.value) == ""){//调用trimNull()过滤空格    	alert("请输入" + msg);    	obj.focus();    	return false;  	}  	return true;}/********************************** zmx 2005.10.05*************************************//*身份证号校验*参数:obj:界面的对象,用于setfocus用;idcard:传入参数值*返回值:*如果为空,返回false*如果校验未通过,返回false*如果校验通过    返回true/********************************** zmx 2005.10.05*************************************/function checkIdcard(obj,idcard){ 	if(idcard == "") return true;//如果为空,则通过校验 		var Errors=new Array("验证通过!","身份证号码位数不对!","身份证号码出生日期超出范围或含有非法字符!","身份证号码校验错误!","身份证地区非法!");	var area={11:"北京",12:"天津",13:"河北",14:"山西",15:"内蒙古",21:"辽宁",22:"吉林",23:"黑龙江",31:"上海",32:"江苏",33:"浙江",34:"安徽",35:"福建",36:"江西",37:"山东",41:"河南",42:"湖北",43:"湖南",44:"广东",45:"广西",46:"海南",50:"重庆",51:"四川",52:"贵州",53:"云南",54:"西藏",61:"陕西",62:"甘肃",63:"青海",64:"宁夏",65:"新疆",71:"台湾",81:"香港",82:"澳门",91:"国外"}	var idcard,Y,JYM;	var S,M;	var idcard_array = new Array();	idcard_array = idcard.split("");		//地区检验	if(area[parseInt(idcard.substr(0,2))]==null) {		alert(Errors[4]);		return false;	}	//身份号码位数及格式检验	switch(idcard.length){		case 15:			if ( (parseInt(idcard.substr(6,2))+1900) % 4 == 0 || ((parseInt(idcard.substr(6,2))+1900) % 100 == 0 && (parseInt(idcard.substr(6,2))+1900) % 4 == 0 )){				ereg=/^[1-9][0-9]{5}[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{3}$/;//测试出生日期的合法性			} else {				ereg=/^[1-9][0-9]{5}[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))[0-9]{3}$/;//测试出生日期的合法性			}			if(ereg.test(idcard)) {//校验通过				return true;							}else{				alert(Errors[2]);				return false;			}					break;		case 18://18位身份号码检测   //出生日期的合法性检查 			//闰年月日:((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))			//平年月日:((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))						if ( parseInt(idcard.substr(6,4)) % 4 == 0 || (parseInt(idcard.substr(6,4)) % 100 == 0 && parseInt(idcard.substr(6,4))%4 == 0 )){				ereg=/^[1-9][0-9]{5}19[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{3}[0-9Xx]$/;//闰年出生日期的合法性正则表达式			} else {				ereg=/^[1-9][0-9]{5}19[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))[0-9]{3}[0-9Xx]$/;//平年出生日期的合法性正则表达式			}						if(ereg.test(idcard)){//测试出生日期的合法性				//计算校验位				S = (parseInt(idcard_array[0]) + parseInt(idcard_array[10])) * 7					+ (parseInt(idcard_array[1]) + parseInt(idcard_array[11])) * 9					+ (parseInt(idcard_array[2]) + parseInt(idcard_array[12])) * 10					+ (parseInt(idcard_array[3]) + parseInt(idcard_array[13])) * 5					+ (parseInt(idcard_array[4]) + parseInt(idcard_array[14])) * 8					+ (parseInt(idcard_array[5]) + parseInt(idcard_array[15])) * 4					+ (parseInt(idcard_array[6]) + parseInt(idcard_array[16])) * 2					+ parseInt(idcard_array[7]) * 1	+ parseInt(idcard_array[8]) * 6					+ parseInt(idcard_array[9]) * 3 ;				Y = S % 11;				M = "F";				JYM = "10X98765432";				M = JYM.substr(Y,1);//判断校验位				if(M == idcard_array[17]) {//检测ID的校验位通过					return true;				}else{					alert(Errors[3]);					return false;				}			}else{				alert(Errors[2]);				return false;			}			break;		default:			alert(Errors[1]); 			return false;						break;	}	return true;}/********************************** zmx 2005.10.05*************************************//*将15的身份证号升为18位*参数:obj:界面的对象,用于setfocus用;idcard:传入参数值*返回值:*如果为空,返回false*如果校验未通过,返回false*如果校验通过    返回18位身份证号     /********************************** zmx 2005.10.05*************************************/function ID15T18(obj,idcard){	var arrInt = new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2);	var arrCh = new Array('1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2'); 	var nTemp = 0, i; 	if (checkIsNull(obj, "身份证号") == false) return false;//调用checkIsnul()判断是否为空    if (checkIdcard(obj,idcard)== false) return false;//调用checkIdcard()判断输入是否正确	if(idcard.length==15){		idcard = idcard.substr(0,6) + '19' + idcard.substr(6,idcard.length-6);		for(i = 0; i < idcard.length; i ++){			nTemp += idcard.substr(i, 1) * arrInt[i]; 		} 		idcard += arrCh[nTemp % 11];  		return idcard; 	}else{    	alert("身份证号已经为18位");   		return false;    } } /*****************文件类型************//********************************** zmx 2005.10.06*************************************//*过滤掉文件路径,取得文件名*参数:fullpath:传入文件路径*返回值:*返回文件名/********************************** zmx 2005.10.06*************************************/function getFileName(fullpath){	var platform = navigator.platform;	var fileseperator=(platform.indexOf("Win")==-1)?"/":"\\";	var idx = fullpath.lastIndexOf(fileseperator);	if(idx == -1){		return fullpath;	}else if(idx >= fullpath.length -1){		return "";	}else{		return fullpath.substring(idx+1);	}}/********************************** zmx 2005.10.06*************************************//* 得到文件的后缀名* oFile为file控件对象/********************************** zmx 2005.10.06*************************************/function getFilePostfix(oFile){    if(oFile == null)   return null;    var pattern = /(.*)\\.(.*)$/gi;    if(typeof(oFile) == "object"){        if(oFile.value == null || oFile.value == "") return null;        var arr = pattern.exec(oFile.value);        return RegExp.$2;    }else if(typeof(oFile) == "string"){        var arr = pattern.exec(oFile);        return RegExp.$2;    }else{        return null;    }}

⌨️ 快捷键说明

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