<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 閱讀(492)
評論(0) 編輯 收藏