
//函数名：chkdate
//功能介绍：检查是否为日期
//参数说明：要检查的字符串
//返回值：0：不是日期  1：是日期yyyymmdd
function chkdate(datestr)
{
	var lthdatestr,i;
	if (datestr != "")
		lthdatestr= datestr.length ;
	else
		lthdatestr=0;
		
	var tmpy="";
	var tmpm="";
	var tmpd="";
	//var datestr;
	var status;
	status=0;
	if(lthdatestr<8)  {alert("日期不完整，请检查[年/月/日]是否都已选定。");return 0;}//长度不等于8
	if(lthdatestr>8)  {alert("日期不完整，请检查[年/月/日]是否都已选定。");return 0;}//长度不等于8
	//含有非数字
	for(i=0;i<lthdatestr;i++)
	{
		single_b=datestr.charAt(i);//取单个数字
		var num=new Number(single_b);
		if(isNaN(num)==true) {alert("含有非法字符。");return 0;}
	}
	
	tmpy=datestr.substring(0,4);
	tmpm=datestr.substring(4,6);
	tmpd=datestr.substring(6);

	year=new Number(tmpy);
	month=new Number(tmpm);
	day=new Number(tmpd)
	//tempdate= new String (year+month+day);
	//alert(tempdate);
	if ((tmpy.length!=4) || (tmpm.length>2) || (tmpd.length>2))
	{
		alert("输入日期非法，请输入格式为yyyymmdd的8位日期。!");
		return 0;
	}
	if (!((1<=month) && (12>=month) && (31>=day) && (1<=day)) )
	{
		alert ("输入日期非法，无效的月份或日期!");
		return 0;
	}
	if (!((year % 4)==0) && (month==2) && (day==29))
	{
		alert ("输入日期非法，无效的日期!");
		return 0;
	}
	if ((month<=7) && ((month % 2)==0) && (day>=31))
	{
		alert ("输入日期非法，无效的日期!");
		return 0;
	
	}
	if ((month>=8) && ((month % 2)==1) && (day>=31))
	{
		alert ("输入日期非法，无效的日期!");
		return 0;
	}
	if ((month==2) && (day==30))
	{
		alert("输入日期非法，无效的日期!");
		return 0;
	}
	
	return 1;
}
//函数名：chkTime    
//功能介绍：检查是否为时间格式的长度
//参数说明：要检查的字符串 
//返回值：0：不是  1：是
function chktime(a) {

	if(a.length<5)  {
	  alert("时间不完整，请检查[小时/分钟]是否都已选定。");
	 return 0;
	}
   else return 1;
}

//函数名：chkemail
//功能介绍：检查是否为Email Address
//参数说明：要检查的字符串
//返回值：0：不是  1：是
function chkemail(a)
{	var i=a.length;
	var temp = a.indexOf('@');
	var tempd = a.indexOf('.');
	if (temp > 1) {
		if ((i-temp) > 3){
			
				if (((i-tempd)>0)&(tempd>0))
				{
					return 1;
				}
			
		}
	}
	return 0;
}

//函数名：chktel
//功能介绍：检查是否为电话号码
//参数说明：要检查的字符串
//返回值：1为是合法，0为不合法
function chktel(TEL)
{
	var i,j,strTemp;
	strTemp="0123456789-()#, ";
	for (i=0;i<TEL.length;i++)
	{
		j=strTemp.indexOf(TEL.charAt(i));	
		if (j==-1)
		{
		//说明有字符不合法
			return 0;
		}
	}
	//说明合法
	return 1;
}

//函数名：chknum
//功能介绍：检查是否为数字
//参数说明：要检查的数字
//返回值：1为是数字，0为不是数字
function chknum(NUM)
{
	var i,j,strTemp;
	strTemp=".0123456789";
	if ( NUM.length== 0)
		return 0
	for (i=0;i<NUM.length;i++)
	{
		j=strTemp.indexOf(NUM.charAt(i));	
		if (j==-1)
		{
		//说明有字符不是数字
			return 0;
		}
	}
	//说明是数字
	return 1;
}

//函数名：chkint
//功能介绍：检查是否为整数
//参数说明：要检查的数字
//返回值：1为是整数，0为不是整数
function chkint(NUM)
{
	var i,j,strTemp;
	strTemp="0123456789";
	if ( NUM.length== 0)
		return 0
	for (i=0;i<NUM.length;i++)
	{
		j=strTemp.indexOf(NUM.charAt(i));	
		if (j==-1)
		{
		//说明有字符不是整数
			return 0;
		}
	}
	//说明是整数
	return 1;
}


//函数名：chkpwd
//功能介绍：检查是否含有非数字或字母
//参数说明：要检查的字符串
//返回值：0：含有 1：全部为数字或字母
function chkpwd(str)
{
  var strSource ="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
  var ch;
  var i;
  var temp;
  
  for (i=0;i<=(str.length-1);i++)
  {
  
    ch = str.charAt(i);
    temp = strSource.indexOf(ch);
    if (temp==-1) 
    {
     return 0;
    }
  }
  if (strSource.indexOf(ch)==-1)
  {
    return 0;
  }
  else
  {
    return 1;
  } 
}

//函数名:chkdata
//功能介绍：检查是否输入空字符
//参数说明：要检查的字符串
//返回值：布尔值
function chkdata(s)
{
  if (s==null)
  {
	  return false;
  }
  var n=s.length;
  for(var i=0;i<n;i++){
	  var c=s.charAt(i);
	  switch(c){
		  case ' ':
		  case '\t':
          case '\n':
			  continue;
		  default:
			  return true;
	  }
  }
  return false;
}
//对入参进行去除前导空格
function stringLtrim(str)
{
	var newstr="";
	for(var i=0;i<str.length;i++)
	{
		if(str.substring(i,i+1)==" ")
		{
			continue;
		}
		else
		{
			newstr=str.substring(i);
			break;
		}
	}
	return newstr;
}
//对入参进行去除后导空格
function stringRtrim(str)
{
	var newstr="";
	for(var i=str.length-1;i>=0;i--)
	{
		if(str.substring(i,i+1)==" ")
		{
			continue;
		}
		else
		{
			newstr=str.substring(0,i+1);
			break;
		}
	}
	return newstr;
}
//对入参进行去除前导后导空格  
function stringTrim(str)
{
	return stringLtrim(stringRtrim(str));
}
//函数名：chkMoneys
//功能介绍：检查是否为有小数位数字
//参数说明：要检查的数字，总位长，小数位长
//返回值：1为是数字，0为不是数字
function chkFloat(NUM,tL,fL) {
  var v=NUM.length;
  var f=NUM.indexOf(".");
  if(f==-1 ) {//没小数
	if(v<=(tL-fL))
	  return 1;
	else 
	  return 0;
  } else {//有小数
    if((v-f-1)>fL) {//若小数位大与指定的小数位长
	  return 0;
	}
	if(f>(tL-fL)) return 0;
	if(v<=(tL+1)) return 1;
	else return 0;

  }
}
function getFloatErrorInfo(itemName,tL,fL) {
	return "["+itemName+"]最多包含"+(tL-fL)+"位的整数，和"+fL+"位小数！";
}

//chkChinese
//功能介绍：检查是否字符串含有中文
//参数说明：要检查的字符串
//返回值：1为是，0为不是
function chkChinese (s)
{ 
var i,c;
var bag = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789><,[]{}?/+=|\\'\":;~!#$%()`";
for (i = 0; i < s.length; i++)
{ 
c = s.charAt(i);//字符串s中的字符
if (bag.indexOf(c) == -1) 
return 1;
}
return 0;
}

//对可能出现单引号的地方进行替换
function replace(source){
	for(var i=0;i<source.length;i++){
		if(source.charAt(i)=="\'"){
			source = source.substring(0,i)+"\'"+source.substring(i);
			i++;
		}
	}
	return source;
}



