<script language=javascript>
function GetTodayDate()
{
today= new Date();
y= today.getYear();
m= (today.getMonth() + 1);
if (m<10)
{
m='0'+m;
}
d= today.getDate();
if (d<10)
{
d='0'+d;
}
h = today.getHours();
if(h<10){
h = '0'+h
}
return y+'-'+m+'-'+d+' '+h;
}
function time()
{
var a =GetTodayDate();
document.form.startDate.value=a.substring(0,10)+' 00';
}
function time2()
{
var a =GetTodayDate();
document.form.endDate.value=a;
}
function checkForm(o)
{
if(o.startDate.value =="" || o.startDate.value.match(/^[0-9]{4}\-[0-9]{2}\-[0-9]{2}\s[0-9]{2}$/)==null)
{
alert("请正确输入起始时间,日期与时间之间用空格隔开,精确到小时(如:2006-04-19 00)");
form.startDate.focus();
return false;
}
if(o.endDate.value =="" || o.endDate.value.match(/^[0-9]{4}\-[0-9]{2}\-[0-9]{2}\s[0-9]{2}$/)==null)
{
alert("请正确输入结束时间,日期与时间之间用空格隔开,精确到小时(如:2006-04-19 09)");
form.endDate.focus();
return false;
}
//if(o.startDate.value.substring(0,7) != o.endDate.value.substring(0,7)){
// alert("不支持跨月查询,请保持开始时间与结束时间年份和月份相同");
// return false;
//}
if(o.startDate.value.substring(11,13)<0 || o.startDate.value.substring(11,13)>23){
alert("起始时间的小时已超出0到23范围,请重新输入");
form.startDate.focus();
return false;
}
if(o.endDate.value.substring(11,13)<0 || o.endDate.value.substring(11,13)>23){
alert("结束时间的小时已超出0到23范围,请重新输入");
form.endDate.focus();
return false;
}
if(o.startDate.value=="")
{
alert('起始查询时间不能为空');
return false;
}
var dateStart=o.startDate.value.split('-');
if(dateStart.length!=3)
{
alert('请输入正确的起始时间格式');
return false;
}
for(var i=0;i<dateStart.length;i++){
if(dateStart[i]=="")
{
alert('请输入正确的起始时间格式');
return false;
}
}
var yearlyStart=year(dateStart[0]);
var monthlyStart=month(dateStart[1]);
if(yearlyStart==0&&monthlyStart==0){
var days=numberOfDays(dateStart[1],dateStart[0]);
today= new Date();
y= today.getYear();
m= (today.getMonth() + 1);
if(dateStart[0]>y||dateStart[0]<2005){
alert("起始时间中请输入年份大于等于2005小于等于当前年份的年份");
return false;
}
if(dateStart[1]>m&&dateStart[0]&&dateStart[0]<=y&&dateStart[0]>=2005){
alert("起始时间中请输入小于当前等于当前的月份");
return false;
}
if(dateStart[0]==2005)
{
if(dateStart[1]<9)
{
alert("日志于2005-09月开始生成,9月以前未生成日志");
return false;
}
}
if(dateStart[2].substring(0,2)<=days&&dateStart[2].substring(0,2)>0)
{
return true;
}else{
alert("对不起此月只有"+days+"天");
return false;
}
}else{
alert("起始时间中请输入年份大于等于2005小于当前年份的年份,月份1至12月份");
return false;
}
if(o.endDate.value=="")
{
alert('结束时间不能为空');
return false;
}
var dateEnd=o.endDate.value.split('-');
if(dateEnd.length!=3)
{
alert('请输入正确的结束时间格式');
return false;
}
for(var i=0;i<dateEnd.length;i++){
if(dateEnd[i]=="")
{
alert('请输入正确的结束时间格式');
return false;
}
}
var yearlyEnd=year(dateEnd[0]);
var monthlyEnd=month(dateEnd[1]);
if(yearlyEnd==0&&monthlyEnd==0){
var days=numberOfDays(dateEnd[1],dateEnd[0]);
today= new Date();
y= today.getYear();
m= (today.getMonth() + 1);
if(dateEnd[0]>y||dateEnd[0]<2005){
alert("结束时间中请输入年份大于等于2005小于等于当前年份的年份");
return false;
}
if(dateEnd[1]>m&&dateEnd[0]&&dateEnd[0]<=y&&dateEnd[0]>=2005){
alert("结束时间中请输入小于当前等于当前的月份");
return false;
}
if(dateEnd[0]==2005)
{
if(dateEnd[1]<9)
{
alert("日志于2005-09月开始生成,9月以前未生成日志");
return false;
}
}
if(dateEnd[2].substring(0,2)<=days&&dateEnd[2].substring(0,2)>0)
{
return true;
}else{
alert("对不起此月只有"+days+"天");
return false;
}
}else{
alert("结束时间中请输入年份大于等于2005小于当前年份的年份,月份1至12月份");
return false;
}
return true;
}
function month(month)
{
if(month>=1&&month<=12)
return 0;
else
return 1;
}
function year(year)
{
if(year>=2005)
return 0;
else
return 1;
}
function numberOfDays(month,year)
{
month=month-1;
var numDays=new Array(31,28,31,30,31,30,31,31,30,31,30,31);
n=numDays[month];
if(month==1&&year%4==0) ++n;
return n;
}
</script>
使用方法: 格式 2006-05-07 15
调用: form 中 调用 onsubmit="return checkForm(this);
posted on 2006-05-12 11:23
happytian 阅读(488)
评论(0) 编辑 收藏