// JavaScript Document
//*****javascript_dict说明****
//isInteger			判断整数
//isFloat				判断是否是浮点型
//isABC					判断是否是英文字母
//isABC123			判断是否是英文字母和数字
//isDate				判断是否是日期格式(****-**-**)

//扩展中......

//去除首尾空白字符
function trim(strIn)
{
	var strOut = "";

	if (strIn)
		strOut = strIn.replace(/^\s*/,'').replace(/\s*$/, ''); 
	
	return strOut;
}

//判断整数
//<txt>被检查字符</txt>
function isInteger(txt)
{
	var i;
	var strCheck;
	
	strCheck = "0123456789";
	
	if(txt != "")
	{
		//循环检查是否都是数字
		for(i = 0;i < txt.length;i++)
		{
			if(strCheck.indexOf(txt.substr(i,1)) < 0)
			{
				//alert("请输入数字");
				return false;
			}
		}
	}
	else
	{
		//alert("字符串为空");
		return false;
	}
	return true;
}

//判断是否是浮点型
//<txt>被检查字符</txt>
function isFloat(txt)
{
	var i;
	var strCheck;
	var intpointcount;
	
	intpointcount = 0;
	strCheck = "0123456789.";

	if(txt != "")
	{
		//循环检查是否都是符合标准的数字
		for(i = 0;i < txt.length;i++)
		{
			if(strCheck.indexOf(txt.substr(i,1)) < 0)
			{
				//alert("请输入数字");
				return false;
			}
			if(txt.substr(i,1) == ".")
			{
				intpointcount = intpointcount + 1;
			}
		}
	}
	else
	{
		//alert("字符串为空");
		return false;
	}

	//检查小数点数量
	if(intpointcount != 1)
	{
		return false;
	}
	//检查小数点位置
	if(txt.length - (txt.indexOf(".") + 1) == 0)
	{
		return false;
	}
	if(txt.length - (txt.indexOf(".")) == txt.length)
	{
		return false;
	}
	return true;
}

//判断是否是浮点型
//<txt>被检查字符</txt>
function isNumeric(txt)
{
	var i;
	var strCheck;
	var intpointcount;
	
	intpointcount = 0;
	strCheck = "0123456789.";
	if(isInteger(txt))
	{
		return true;
	}

	if(txt != "")
	{
		//循环检查是否都是符合标准的数字
		for(i = 0;i < txt.length;i++)
		{
			if(strCheck.indexOf(txt.substr(i,1)) < 0)
			{
				//alert("请输入数字");
				return false;
			}
			if(txt.substr(i,1) == ".")
			{
				intpointcount = intpointcount + 1;
			}
		}
	}
	else
	{
		//alert("字符串为空");
		return false;
	}

	//检查小数点数量
	if(intpointcount != 1)
	{
		return false;
	}
	//检查小数点位置
	if(txt.length - (txt.indexOf(".") + 1) == 0)
	{
		return false;
	}
	if(txt.length - (txt.indexOf(".")) == txt.length)
	{
		return false;
	}
	return true;
}

//判断是否是英文
//<txt>被检查字符</txt>
function isABC(txt)
{
	var i;
	var strCheck;
	
	strCheck = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
	
	if(txt != "")
	{
		for(i = 0;i < txt.length;i++)
		{
			if(strCheck.indexOf(txt.substr(i,1)) < 0)
			{
				//alert("请输入英文字母");
				return false;
			}
		}
	}
	else
	{
		//alert("字符串为空");
		return false;
	}
	return true;
}

//判断是否是英文和数字
//<txt>被检查字符</txt>
function isABC123(txt)
{
	var i;
	var strCheck;
	
	strCheck = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.";
	
	if(txt != "")
	{
		for(i = 0;i < txt.length;i++)
		{
			if(strCheck.indexOf(txt.substr(i,1)) < 0)
			{
				//alert("请输入英文字母或者数字");
				return false;
			}
		}
	}
	else
	{
		//alert("字符串为空");
		return false;
	}
	return true;
}

//判断是否是日期格式(****-**-**)
//<txt>被检查字符</txt>
function isDate(txt)
{
	var i;
	var strCheck;
	var stryear;
	var strmonth;
	var strday;
	
	strCheck = "0123456789";
	
	//判断字符是否为空
	if(txt == "")
	{
		//alert("字符串为空");
		return false;
	}
	//判断字符长度
	if(txt.length != 10)
	{
		//alert("日期长度有误");
		return false;
	}
	//判断前四位是否数字
	for(i = 0;i < 4;i++)
	{
		if(strCheck.indexOf(txt.substr(i,1)) < 0)
		{
			//alert("请按照格式输入正确的时间");
			return false;
		}
	}
	//判断前月份是否数字
	for(i = 5;i < 7;i++)
	{
		if(strCheck.indexOf(txt.substr(i,1)) < 0)
		{
			//alert("请按照格式输入正确的时间");
			return false;
		}
	}
	//判断前天数是否数字
	for(i = 8;i < 10;i++)
	{
		if(strCheck.indexOf(txt.substr(i,1)) < 0)
		{
			//alert("请按照格式输入正确的时间");
			return false;
		}
	}
	//判断连接符是否是-
	if(txt.substr(4,1) != "-" || txt.substr(7,1) != "-")
	{
		//alert("请按照格式输入正确的时间");
		return false;
	}
	//判断月份和天数的关系
	stryear = txt.substr(0,4)
	strmonth = txt.substr(5,2)
	strday = txt.substr(8,2)
	if(parseInt(strmonth,10) == 1 || parseInt(strmonth,10) == 3 || parseInt(strmonth,10) == 5 || parseInt(strmonth,10) == 7 || parseInt(strmonth,10) == 8 || parseInt(strmonth,10) == 10 || parseInt(strmonth,10) == 12)
	{
		if(parseInt(strday,10) > 31 || parseInt(strday,10) < 1)
		{
			//alert("输入的时间有误");
			return false;
		}
	}
	if(parseInt(strmonth,10) == 4 || parseInt(strmonth,10) == 6 || parseInt(strmonth,10) == 9 || parseInt(strmonth,10) == 11)
	{
		if(parseInt(strday,10) > 30 || parseInt(strday,10) < 1)
		{
			//alert("输入的时间有误");
			return false;
		}
	}
	if(parseInt(strmonth,10) == 2)
	{
		if(parseInt(stryear,10) % 4 == 0)
		{
			if(parseInt(strday,10) > 29 || parseInt(strday,10) < 1)
			{
				//alert("输入的时间有误");
				return false;
			}
		}
		else
		{
			if(parseInt(strday,10) > 28 || parseInt(strday,10) < 1)
			{
				//alert("输入的时间有误");
				return false;
			}
		}
	}

	return true;
}

//判断是否是浮点型
//<txt>被检查字符</txt>
function isFloatNegative (txt)
{
	var i;
	var strCheck;
	var intpointcount;
	
	intpointcount = 0;
	strCheck = "-0123456789.";

	if(txt != "")
	{
		//循环检查是否都是符合标准的数字
		for(i = 0;i < txt.length;i++)
		{
			if(strCheck.indexOf(txt.substr(i,1)) < 0)
			{
				//alert("请输入数字");
				return false;
			}
			if(txt.substr(i,1) == ".")
			{
				intpointcount = intpointcount + 1;
			}
		}
	}
	else
	{
		//alert("字符串为空");
		return false;
	}

	//检查小数点数量
	if(intpointcount != 1)
	{
		return false;
	}
	//检查小数点位置
	if(txt.length - (txt.indexOf(".") + 1) == 0)
	{
		return false;
	}
	if(txt.length - (txt.indexOf(".")) == txt.length)
	{
		return false;
	}
	return true;
}


//判断email地址的合法性
function isEmail(txt)
{
	if(trim(txt) == "")
		return false;
		
	if(txt.match("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+([\.][a-z0-9]+)+$") == null)
		return false;

	return true;
}

//判断电话
function isTelphoneNumber(num)
{
	num=trim(num);
	if (num=="")
		return false;
	var s1=num.length;
	if (s1<6)
		return false;
	var checkOK = "0123456789-";
	var checkStr = num;
	var allValid = true;
	for (i = 0;  i < checkStr.length;  i++)
	{
	  ch = checkStr.charAt(i);
	  for (j = 0;  j < checkOK.length;  j++)
	    if (ch == checkOK.charAt(j))
	      break;
	  if (j == checkOK.length)
	  {
	    allValid = false;
	    break;
	  }
	}
	if (!allValid)
		return false;
	return true;
}

//判断URL
function isURL(txt)
{
	//if(trim(txt) == "")
		//return false;
	
	//if(txt.match("http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?") == null)
		//return false;

	return true;
}

//判断邮政编码（中国的）
function iszip(num){
	if (num=="")
		return false;
	var s1=num.length;
	if (s1<6)
		return false;
	var checkOK = "0123456789";
	var checkStr = num;
	var allValid = true;
	for (i = 0;  i < checkStr.length;  i++)
	{
	  ch = checkStr.charAt(i);
	  for (j = 0;  j < checkOK.length;  j++)
	    if (ch == checkOK.charAt(j))
	      break;
	  if (j == checkOK.length)
	  {
	    allValid = false;
	    break;
	  }
	}
	if (!allValid)
		return false;
	return true;
}

//判断邮政编码（外国的）
function iszipf(num){
	if (num=="")
		return false;
	var checkOK = "0123456789";
	var checkStr = num;
	var allValid = true;
	for (i = 0;  i < checkStr.length;  i++)
	{
	  ch = checkStr.charAt(i);
	  for (j = 0;  j < checkOK.length;  j++)
	    if (ch == checkOK.charAt(j))
	      break;
	  if (j == checkOK.length)
	  {
	    allValid = false;
	    break;
	  }
	}
	if (!allValid)
		return false;
	return true;
}

function new_win(webid) 
{
	var win;	
	if (webid != "") 
	{		
		win = 'menubar=0,toolbar=0,location=0,directories=0,status=0,scrollbars=0,width=400,height=537,top=100,left=300';
		window.open(webid,'sysAlert',win);		
	}
}
