﻿// JScript 文件
function IsValidDateTextBox(ctl)
    {
	    if (isShortDate(ctl.value) == false)
	    {
		    alert('非法输入！期望的日期格式 yyyy-mm-dd!');
		    //ctl.value = '';
		    ctl.focus();
		    ctl.select();
		    return false;
	    }
	    return true;
    }
    //年、月、日 的分隔符只能是 “-”或“.”。
    //年月必须是四位长度。
    function isShortDate(str) 
    { 
	if (str == null || str == '')
		return true;
		
	var index=0 ,num1=0,num2=0,num3 = 0,tmp = '';
	var arr = new Array(3);
	
	for (var i = 0;i< str.length ;i++)
	{
		if (str.charAt(i) >= '0' && str.charAt(i) <= '9')
			continue;
		else if (str.charAt(i) == '-')
			num1++;
		else if (str.charAt(i) == '.')
			num2 ++;
		else
			num3 ++;
	}
	
	if (num3 > 0 || num1 + num2 != 2 || (num1== 1 && num2 == 1))
		return false;
		
	arr[0] = '';	arr[1] = '';	arr[2] = '';	
	for (var i = 0;i< str.length ;i++)
	{
		if (str.charAt(i) >= '0' && str.charAt(i) <= '9')
			tmp += str.charAt(i);
		else
		{
			arr[index] = tmp;
			index ++;
			tmp = '';
		}
	}
	arr[index] = tmp;
	
	if (arr[0].length != 4 )
		return false;
	
	if (isNaN(Date.parse(arr[1]+'/'+arr[2]+'/'+arr[0]))) 
			return false; 
		
		var dd = parseInt(arr[2],10); 
		var mm = parseInt(arr[1],10)-1; 
		var yy = parseInt(arr[0],10); 
		var date = new Date(yy,mm,dd); 
		if (dd!=date.getDate() || mm!=date.getMonth() || yy!=date.getFullYear()) 
			return false; 
		
		return true; 
	}



