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

📄 checkdata.js

📁 网上书店 源代码和数据库网上书店 源代码和数据库
💻 JS
📖 第 1 页 / 共 3 页
字号:
/**
 * Description: JavaScript脚本文件,提供公用方法,供JSP网页调用
 */
 //wxl add at 2005-04-14////////////////////////////
/*
对date数据大小进行效验dateCompare,后一个值一定要大于前一个值,若不是提示信息,光标自动定位
参数args1代表小参数对象的值,例如:document.form1.name.value
参数args2代表大参数对象的值,例如:document.form1.name.value
参数args3代表arg1参数的实际意义,以便能准确通知用户。
参数args4代表arg2参数的实际意义,以便能准确通知用户。
参数args11代表arg11参数的页面元素,以便设置相应的焦点。
*/
function dateValueCompare(args1,args2,args3,args4,obj11){
 var arrayOfStart = trim(args1).split("-");
 var arrayOfEnd = trim(args2).split("-");
 //alert(""+arrayOfEnd);
 var startDate=new Date(arrayOfStart[0],arrayOfStart[1],arrayOfStart[2]);
 //alert("startDate="+startDate);
 var endDate=new Date(arrayOfEnd[0],arrayOfEnd[1],arrayOfEnd[2]);
 //alert("endDate="+endDate);
 //alert(startDate<=endDate);
 if(startDate<=endDate){
  //alert("判断合法已进入!");
  return true;
 }else{
   alert(args3+"输入的值应该小于"+args4+"值!");
   obj11.focus();
   return false;
 }
}
/**
功能描述:验证时间的格式()
obj1 : 输入框对象
obj2 : 是否可以为空 0,可以 1 不可以
obj3 : 描述信息
obj4 : 日期格式 'yyyy-mm-dd','yyyy-mm','yyyy'

*/
function checkDateType(obj1,obj2,obj3,obj4){
	var obj=obj1;
 if(obj4=='yyyy-mm-dd'){
	 if(!rigorCheckValue(obj1,obj2,4,0,0,obj3)){
		 return false;
	 }
	 return true;
 }else if(obj4=='yyyy-mm'){
   if(!checkDateYearMonth(obj1,obj2,obj3)){
	   return false;
   }
   return true;
 }else if(obj4=='yyyy'){
	 if(!checkDateOnlyYear(obj1,obj2,obj3)){
		 return false;
	 }
	 return true;
 }

  return true;
}
/**
功能描述:验证时间的格式('yyyy')
obj1 : 输入框对象
obj2 : 是否可以为空 0,可以 1 不可以
obj3 : 描述信息
*/
function checkDateOnlyYear(obj1,obj2,obj3){
	var obj=obj1;
  if(obj2==0){
	  if(obj.value!=''){
		  if(isNumberAlt(obj1)){
		   if(obj.value.length>=0&&obj.value.length<4){
			  alert(obj3+'格式不正确(正确格式:yyyy)');
			  obj.focus();
			  return false;
		   }else if(obj.value.length>4){
			  alert(obj3+'格式不正确(正确格式:yyyy)');
			  obj.focus();
			  return false;
		   }
		  }
	  }
	  return true;
  }else if(obj2==1){
	  if(obj.value==''){
		  alert(obj3+'不能为空!');
		  obj.focus();
		  return false;
	  }else{
        if(isNumberAlt(obj1)){
		   if(obj.value.length>=0&&obj.value.length<4){
			  alert(obj3+'格式不正确(正确格式:yyyy)');
			  obj.focus();
			  return false;
		   }else if(obj.value.length>4){
			  alert(obj3+'格式不正确(正确格式:yyyy)');
			  obj.focus();
			  return false;
		   }
		  }
		  return true;
	  }
  }
}
/**
功能描述:验证时间的格式('yyyy-mm')
obj1 : 输入框对象
obj2 : 是否可以为空 0,可以 1 不可以
obj3 : 描述信息
*/
function checkDateYearMonth(obj1,obj2,obj3){
  var obj=obj1;
   if(!obj.value==''){
  var dateReg = /^\d\d\d\d-([0][1-9])|([1][0-2])$/;
  if(dateReg.test(obj.value)){
     return true;
  }else{
     alert(obj3+"填写的不是有效的日期格式,请重新输入!");
     obj.focus();
     return false;
  }
  }else if(obj2==1){
	   if(obj.value==''){
    alert(obj3+"为必填项,请输入!");
	obj.focus();
    return false;
  }else if(!obj.value==''){
  var dateReg = /^\d\d\d\d-([0][1-9])|([1][0-2])$/;
  if(dateReg.test(obj.value)){
     return true;
  }else{
     alert(obj3+"填写的不是有效的日期格式,请重新输入!");
     obj.focus();
     return false;
  }
  }
 }
}
///////////////////////////
/**
 * 作用: 去除字符串左空格
 * 参数: str: 字符串
 * 返回: 去除左空格后的字符串
 */
function lTrim(str){
	var rtnStr;
	rtnStr=""
	for (var i=0;i<str.length;i++){
		if (str.charAt(i)!=" "){
			rtnStr=str.substr(i);
			break;
		}
	}
	return rtnStr;
}

/**
 * 作用: 去除字符串右空格
 * 参数: str: 字符串
 * 返回: 去除右空格后的字符串

function rTrim(str){
	var rtnStr;
	rtnStr=""
	for (var i=str.length-1;i>=0;i--){
		if (str.charAt(i)!=" "){
			rtnStr=str.substring(0,i+1);
			break;
		}
	}
	return rtnStr;
}
 */
//去掉字串右边的空格
function rTrim(str)
{
var iLength;

iLength = str.length;
if (str.charAt(iLength - 1) == " ")
{
//如果字串右边第一个字符为空格
str = str.slice(0, iLength - 1);//将空格从字串中去掉
//这一句也可改成 str = str.substring(0, iLength - 1);
str = rTrim(str); //递归调用
}
return str;
}


/**
 * 作用: 去除字符串左右空格
 * 参数: str: 字符串
 * 返回: 去除左右空格后的字符串
 */
function trim(str){
	return(lTrim(rTrim(str)));
}

/**
 * 作用: 根据错误号,显示提示信息
 * 参数: (1) errNo: 错误号(与message.js文件对应); (2) objName: 对象名(可选参数)
 * 返回: alert对话框
 */
function displayMessage(errNo,objName) {
  if( objName==null ){
    alert(errNo);
  } else {
    alert('"'+objName+'"'+errNo);
  }
}

/**
 * 作用: 检测是否为空
 * 参数: obj: 要检查的输入对象
 * 返回: true/false
 */
function isEmpty(obj) {
	var val=obj.value;
	if(trim(val)==""){
		return true;
	}
  return false;
}

/**
 * 作用: 检测是否为空;如果为空,显示提示信息
 * 参数: (1) obj: 要检查的输入对象; (2) message: 在错误提示中显示的对象名称(可选)
 * 返回: true/false alert
 */
function isEmptyAlt(obj,message) {
  if( isEmpty(obj) ){
    displayMessage(M01001,message);
    obj.focus();
    return true;
  }
  return false;
}
/**
 * 作用: 检测数字,至少一位长度
 * 参数: obj: 要检查的输入对象
 * 返回: true/false
 */
function isNumber(obj) {
	var str=trim(obj.value);
	var regexp=/^(\d+)$/;
	return regexp.test(str);
}

/**
 * 作用: 检测数字,至少一位长度;如果不是数字,显示提示信息
 * 参数: obj: 要检查的输入对象; (2) message: 在错误提示中显示的对象名称(可选)
 * 返回: true/false alert
 */
function isNumberAlt(obj,message) {
  if( isNumber(obj) ){
    return true;
  }
  displayMessage(M01002,message);
  obj.focus();
  return false;
}

/**
 * 作用: 检测int,长度范围:1-限定长度
 * 参数: (1) num: 输入的数字; (2) len: 数字的限定长度(默认是8)
 * 返回: true/false
 */
function isInt(num,len){
  var regexp;
  var leng;
  if( len==null ){
    regexp = /^(\d){1,8}$/;
  } else {
    regexp = /^(\d){1,leng}$/;
  }
  return(regexp.test(num));
}

/**
 * 作用: 检测int,长度范围(1-限定长度);如果不符,显示提示信息
 * 参数: (1) num: 输入的数字; (2) len: 数字的限定长度(默认是8); (3) message: 在错误提示中显示的对象名称(可选)
 * 返回: true/false alert
 */
function isIntAlt(num,len,message) {
  if( isInt(num,len) ){
    return true;
  }
  displayMessage(M01003,message);
  return false;
}

//检测float,长度范围:整数1-11位,浮点精度4位
//如:12 12.12 12.1234 为合法的,12.12345为非法
function isFloat(obj){
  //var regexp = /^(\d){1,11}((.)(\d){1,4})?$/;
// 2004-07-26 李诚修改
//   var regexp = /^(-?)?(\d){1,11}((.)(\d){1,4})?$/;
  var regexp = /^(-?)?(\d){1,11}((\.)(\d){1,4})?$/;
  return(regexp.test(trim(obj.value)));
}

//检测float,长度范围:整数1-11位,浮点精度4位
//如果不符,显示提示信息
function isFloatAlt(obj,message) {
  if( isFloat(obj) ){
    return true;
  }
  displayMessage(M01004,message);
  obj.focus();
  return false;
}

//检测字符串,为数字与字母组合
function isString(obj){
	var str=trim(obj.value);
	var regexp=/^(\w+)$/;
	return regexp.test(str);
}

//检测字符串,为数字与字母组合;如果不符,显示提示信息
function isStringAlt(obj,message) {
  if( isString(obj) ){
    return true;
  }
  displayMessage(M01005,message);
  obj.focus();
  return false;
}

//电子信箱检测
function isEmail(str) {
	var regexp = /^(\w)[^@]{0,16}(@)(\w){1,30}(.(\w){1,5})+$/;
	return(regexp.test(str));
}

//电子信箱检测;如果不符,显示提示信息
function isEmailAlt(str,message) {
  if( isEmail(str) ){
    return true;
  }
  displayMessage(M01006,message);
  return false;
}

//身份证号码检测
function isIDCard(str) {
	var regexp;
	if(str.length==15){             //15位
		regexp=/^(\d{15})$/;
   	return regexp.test(str);
	}
  if(str.length==18){             //18位
	  regexp=/^(\d{17})([1]{1})$/;
    if(!regexp.test(str))
	    regexp=/^(\d{17})(\w{1})$/;
		return regexp.test(str);
	}
	return false;
}

//身份证号码检测;如果格式不符,显示提示信息
function isIDCardAlt(str,message) {
  if( isIDCard(str) ){
    return true;
  }
  displayMessage(M01007,message);
  return false;
}

//用户ID检测,可以包含字母数字及除字符:’ ” 外的其他字符,长度1-16位
function isUserID(str) {
	regexp = /^(\w){1,16}$/;
  return(regexp.test(str));
}

//用户ID检测,可以包含字母数字及除字符:’ ” 外的其他字符,长度1-16位
//如果格式不符,显示提示信息
function isUserIDAlt(str,message) {
  if( isUserID(str) ){
    return true;
  }
  displayMessage(M01008,message);
  return false;
}

//检测字符串 不能包含><'"
function isStr(obj){
	var tf=false;
	var str=trim(obj.value);
	if(str.indexOf("'")>-1||str.indexOf(">")>-1||str.indexOf("<")>-1||str.indexOf("\"")>-1)
		tf=false;
	else
		tf=true;
	return tf;
}

//检测字符串 不能包含><'";如果格式不符,显示提示信息
function isStrAlt(obj,message) {
  if( isStr(obj) ){
    return true;
  }
  displayMessage(M01009,message);
  obj.focus();
  return false;
}

//检测日期(1900~2099),合法格式为 2002-09-30
function isDate(obj)
{
 var dt=trim(obj.value);
 var dtYear = dt.substring(0,4);
 var joinStr1 = dt.substring(4,5);
 var dtMonth = dt.substring(5,7);
 var joinStr2 = dt.substring(7,8);
 var dtDay = dt.substring(8,10);
 var leapYear = false;     //闰年标志
 var tf = true;
 if (!isInt(dtYear))
   return false;
 if (!isInt(dtMonth))
   return false;
 if (!isInt(dtDay))
   return false;
 if(joinStr1!="-"||joinStr2!="-")
   return false;
 if((dt.length)!=10)
   tf = false;
 if(dtYear<1900)
   tf = false;
 if(dtYear>2099)
   tf = false;
 if((dtYear%400)==0)
   leapYear = true;
 else
   if((dtYear%100)!=0)
     if(dtYear%4==0)
       leapYear = true;
 if(dtMonth<1)
   tf = false;
 if(dtMonth>12)
   tf = false;
 switch(dtMonth) {
   case '01':
   case '03':
   case '05':
   case '07':
   case '08':
   case '10':
   case '12':
     if(dtDay<1)
       tf = false;
     if(dtDay>31)
       tf = false;
     break;
   case '04':
   case '06':
   case '09':
   case '11':
     if(dtDay<1)
       tf = false;
     if(dtDay>30)
       tf = false;
     break;
   case '02':
     if(leapYear) {
       if(dtDay<1)
         tf = false;
       if(dtDay>29)
         tf = false;
     }
     else {
       if(dtDay<1)
         tf = false;
       if(dtDay>28)
         tf = false;
     }
     break;
 }

 if(tf)
   return true;
 else
   return false;
}

//检测日期(1900~2099),合法格式为 2002-09-30;如果格式不符,显示提示信息
function isDateAlt(obj,message) {
  if( isDate(obj) ){
    return true;
  }
  displayMessage(M01010,message);
  obj.focus();
  return false;
}
//检测日期(1900~2099),合法格式为 2002-09-30
function isTempDate(obj)
{
 var dt=obj;
 var dtYear = dt.substring(0,4);
 var joinStr1 = dt.substring(4,5);
 var dtMonth = dt.substring(5,7);
 var joinStr2 = dt.substring(7,8);
 var dtDay = dt.substring(8,10);
 var leapYear = false;     //闰年标志
 var tf = true;
 if (!isInt(dtYear))
   return false;
 if (!isInt(dtMonth))
   return false;
 if (!isInt(dtDay))
   return false;
 if(joinStr1!="-"||joinStr2!="-")
   return false;
 if((dt.length)!=10)
   tf = false;
 if(dtYear<1900)
   tf = false;
 if(dtYear>2099)
   tf = false;
 if((dtYear%400)==0)
   leapYear = true;
 else
   if((dtYear%100)!=0)
     if(dtYear%4==0)
       leapYear = true;
 if(dtMonth<1)
   tf = false;
 if(dtMonth>12)
   tf = false;
 switch(dtMonth) {
   case '01':
   case '03':
   case '05':
   case '07':
   case '08':
   case '10':
   case '12':
     if(dtDay<1)
       tf = false;
     if(dtDay>31)
       tf = false;
     break;
   case '04':
   case '06':
   case '09':
   case '11':
     if(dtDay<1)
       tf = false;
     if(dtDay>30)
       tf = false;
     break;
   case '02':
     if(leapYear) {
       if(dtDay<1)
         tf = false;
       if(dtDay>29)

⌨️ 快捷键说明

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