csdn meizz(梅花雪)的方法,判断日期时间是否有效:<script language=javascript>
String.prototype.isTime = function()
{
var r = this.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/);
if(r==null)return false; var d = new Date(r[1], r[3]-1,r[4],r[5],r[6],r[7]);
return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]&&d.getHours()==r[5]&&d.getMinutes()==r[6]&&d.getSeconds()==r[7]);
}
alert("2002-1-31 12:34:56".isTime());
alert("2001-2-29 12:54:56".isTime());
alert("2002-1-41 12:00:00".isTime());
</script>
String.prototype.isTime = function()
{
var r = this.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/);
if(r==null)return false; var d = new Date(r[1], r[3]-1,r[4],r[5],r[6],r[7]);
return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]&&d.getHours()==r[5]&&d.getMinutes()==r[6]&&d.getSeconds()==r[7]);
}
alert("2002-1-31 12:34:56".isTime());
alert("2001-2-29 12:54:56".isTime());
alert("2002-1-41 12:00:00".isTime());
</script>
if (document.all(表单名).Date.value < String.prototype.isTime )
{ alter (“输入日期不能早于今天!!”)}
还是达不到预期效果啊,是不是上面代码的格式不对?麻烦高手再看一下,谢谢了,小弟在线等
Date.prototype.dateCompare = function(date){
if(typeof(date) != "object" || !(/Date/.test(date.constructor)))
throw new Error(-1,"dateCompare(date)的date参数为Date类型.");
var d = this.getTime() - date.getTime();
return d>0?1:(d==0?0:-1);
}
http://community.csdn.net/Expert/topic/4608/4608231.xml?temp=.18771
function checkDate(obj)//判断日期格式是不是符合
{
var strDate=obj.value;
re=/\d{4}\-\d{2}-\d{2}/g
if(re.test(strDate))//判断日期格式符合YYYY-MM-DD标准
{
var DateArray=strDate.split("-");
var dateElement=new Date(DateArray[0],parseInt(DateArray[1])-1,DateArray[2]);
if(!((dateElement.getFullYear()==parseInt(DateArray[0]))&&((dateElement.getMonth()+1)==parseInt(DateArray[1]))&&(dateElement.getDate()==parseInt(DateArray[2]))))//判断日期逻辑
{
alert("不符合时间逻辑")
obj.value='';
}
else
{
var strDate2=new Date();
var DateArray1=strDate.split("-");
var dateElement1=new Date(DateArray1[0],parseInt(DateArray1[1])-1,DateArray1[2]);
if(dateElement1<=strDate2)
{
alert("日期必须大于当前日期")
obj.value='';
}
else
{
alert("正确")
}
}
}
else
{
alert("格式输入错误")
obj.value='';
}
}
</script>
<input name=time1 onblur=checkDate(this)>