我的第五天:错误总结


时间控件记录:
<%--  插入代码 --%>     

      < script   type   = "text/javascript" >
function   HS_DateAdd(interval,number,date){
     number = parseInt(number);
      if   ( typeof (date)==   "string" ){   var   date =   new   Date(date.split( "-" )[0],date.split( "-"   )[1],date.split( "-"   )[2])}
      if   ( typeof (date)==   "object" ){   var   date = date}
      switch (interval){
      case   "y" : return   new   Date(date.getFullYear()+number,date.getMonth(),date.getDate());   break ;
      case   "m" : return   new   Date(date.getFullYear(),date.getMonth()+number,checkDate(date.getFullYear(),date.getMonth()+number,date.getDate()));   break ;
      case   "d" : return   new   Date(date.getFullYear(),date.getMonth(),date.getDate()+number);   break ;
      case   "w" : return   new   Date(date.getFullYear(),date.getMonth(),7*number+date.getDate());   break ;
     }
}
function   checkDate(year,month,date){
      var   enddate = [ "31" , "28"   , "31"   , "30"   , "31"   , "30"   , "31"   , "31"   , "30"   , "31"   , "30"   , "31"   ];
      var   returnDate =   "" ;
      if   (year%4==0){enddate[1]=   "29" }
      if   (date>enddate[month]){returnDate = enddate[month]} else {returnDate = date}
      return   returnDate;
}
function   WeekDay(date){
      var   theDate;
      if   ( typeof (date)==   "string" ){theDate =   new   Date(date.split( "-" )[0],date.split( "-"   )[1],date.split( "-"   )[2]);}
      if   ( typeof (date)==   "object" ){theDate = date}
      return   theDate.getDay();
}
function   HS_calender(){
      var   lis =   "" ;
      var   style =   "" ;
     
     style += "<style type='text/css'>" ;
     style += ".calender { width:170px; height:auto; font-size:12px; margin-right:14px; background:url(calenderbg.gif) no-repeat right center #fff; border:1px solid #397EAE; padding:1px}" ;
     style += ".calender ul {list-style-type:none; margin:0; padding:0;}" ;
     style += ".calender .day { background-color:#EDF5FF; height:20px;}" ;
     style += ".calender .day li,.calender .date li{ float:left; width:14%; height:20px; line-height:20px; text-align:center}" ;
     style += ".calender li a { text-decoration:none; font-family:Tahoma; font-size:11px; color:#333}" ;
     style += ".calender li a:hover { color:#f30; text-decoration:underline}" ;
     style += ".calender li a.hasArticle {font-weight:bold; color:#f60 !important}" ;
     style += ".lastMonthDate, .nextMonthDate {color:#bbb;font-size:11px}" ;
     style += ".selectThisYear a, .selectThisMonth a{text-decoration:none; margin:0 2px; color:#000; font-weight:bold}" ;
     style += ".calender .LastMonth, .calender .NextMonth{ text-decoration:none; color:#000; font-size:18px; font-weight:bold; line-height:16px;}" ;
     style += ".calender .LastMonth { float:left;}" ;
     style += ".calender .NextMonth { float:right;}" ;
     style += ".calenderBody {clear:both}" ;
     style += ".calenderTitle {text-align:center;height:20px; line-height:20px; clear:both}" ;
     style += ".today { background-color:#ffffaa;border:1px solid #f60; padding:2px}" ;
     style += ".today a { color:#f30; }" ;
     style += ".calenderBottom {clear:both; border-top:1px solid #ddd; padding: 3px 0; text-align:left}" ;
     style += ".calenderBottom a {text-decoration:none; margin:2px !important; font-weight:bold; color:#000}" ;
     style += ".calenderBottom a.closeCalender{float:right}" ;
     style += ".closeCalenderBox {float:right; border:1px solid #000; background:#fff; font-size:9px; width:11px; height:11px; line-height:11px; text-align:center;overflow:hidden; font-weight:normal !important}" ;
     style += "</style>" ;
      var   now;
      if   ( typeof (arguments[0])==   "string" ){
           selectDate = arguments[0].split(   "-" );
              var   year = selectDate[0];
              var   month = parseInt(selectDate[1])-1+   "" ;
              var   date = selectDate[2];
           now =   new   Date(year,month,date);
     } else   if   ( typeof (arguments[0])==   "object" ){
           now = arguments[0];
     }
      var   lastMonthEndDate = HS_DateAdd( "d" , "-1"   ,now.getFullYear()+ "-"   +now.getMonth()+ "-01"   ).getDate();
      var   lastMonthDate = WeekDay(now.getFullYear()+ "-"   +now.getMonth()+ "-01"   );
      var   thisMonthLastDate = HS_DateAdd( "d" , "-1"   ,now.getFullYear()+ "-"   +(parseInt(now.getMonth())+1).toString()+ "-01" );
      var   thisMonthEndDate = thisMonthLastDate.getDate();
      var   thisMonthEndDay = thisMonthLastDate.getDay();
      var   todayObj =   new   Date();
     today = todayObj.getFullYear()+ "-"   +todayObj.getMonth()+ "-" +todayObj.getDate();
      for   (i=0; i<lastMonthDate; i++){    // Last Month's Date
           lis =   "<li class='lastMonthDate'>" +lastMonthEndDate+   "</li>"   + lis;
           lastMonthEndDate--;
     }
      for   (i=1; i<=thisMonthEndDate; i++){   // Current Month's Date
              if (today == now.getFullYear()+ "-" +now.getMonth()+ "-"   +i){
                   var   todayString = now.getFullYear()+ "-" +(parseInt(now.getMonth())+1).toString()+ "-"   +i;
                lis +=   "<li><a href=javascript:void(0) class='today' οnclick='_selectThisDay(this)' title='" +now.getFullYear()+ "-" +(parseInt(now.getMonth())+1)+   "-" +i+   "'>" +i+   "</a></li>" ;
           }   else {
                lis +=   "<li><a href=javascript:void(0) οnclick='_selectThisDay(this)' title='" +now.getFullYear()+ "-" +(parseInt(now.getMonth())+1)+   "-" +i+   "'>" +i+   "</a></li>" ;
           }
     }
      var   j=1;
      for   (i=thisMonthEndDay; i<6; i++){    // Next Month's Date
           lis +=   "<li class='nextMonthDate'>" +j+ "</li>"   ;
           j++;
     }
     lis += style;
      var   CalenderTitle =   "<a href='javascript:void(0)' class='NextMonth' οnclick=HS_calender(HS_DateAdd('m',1,'" +now.getFullYear()+   "-" +now.getMonth()+   "-" +now.getDate()+   "'),this) title='Next Month'>?</a>" ;
     CalenderTitle +=   "<a href='javascript:void(0)' class='LastMonth' οnclick=HS_calender(HS_DateAdd('m',-1,'" +now.getFullYear()+   "-" +now.getMonth()+   "-" +now.getDate()+   "'),this) title='Previous Month'>?</a>" ;
     CalenderTitle +=   "<span class='selectThisYear'><a href='javascript:void(0)' οnclick='CalenderselectYear(this)' title='Click here to select other year' >" +now.getFullYear()+ "</a></span>年<span class='selectThisMonth'><a href='javascript:void(0)' οnclick='CalenderselectMonth(this)' title='Click here to select other month'>" +(parseInt(now.getMonth())+1).toString()+   "</a></span>月" ;
      if   (arguments.length>1){
          arguments[1].parentNode.parentNode.getElementsByTagName(   "ul" )[1].innerHTML = lis;
           arguments[1].parentNode.innerHTML = CalenderTitle;
     } else {
              var   CalenderBox = style+   "<div class='calender'><div class='calenderTitle'>" +CalenderTitle+ "</div><div class='calenderBody'><ul class='day'><li>日</li><li>一</li><li>二</li><li>三</li><li>四</li><li>五</li><li>六</li></ul><ul class='date' id='thisMonthDate'>" +lis+ "</ul></div><div class='calenderBottom'><a href='javascript:void(0)' class='closeCalender' οnclick='closeCalender(this)'>??</a><span><span><a href=javascript:void(0) οnclick='_selectThisDay(this)' title='" +todayString+ "'>Today</a></span></span></div></div>" ;
              return   CalenderBox;
     }
}
function   _selectThisDay(d){
      var   boxObj = d.parentNode.parentNode.parentNode.parentNode.parentNode;
           boxObj.targetObj.value = d.title;
           boxObj.parentNode.removeChild(boxObj);
}
function   closeCalender(d){
      var   boxObj = d.parentNode.parentNode.parentNode;
           boxObj.parentNode.removeChild(boxObj);
}
function   CalenderselectYear(obj){
              var   opt =   "" ;
              var   thisYear = obj.innerHTML;
              for   (i=1970; i<=2020; i++){
                   if   (i==thisYear){
                     opt +=   "<option value=" +i+ " selected>" +i+ "</option>" ;
                }   else {
                     opt +=   "<option value=" +i+ ">" +i+   "</option>" ;
                }
           }
           opt =   "<select οnblur='selectThisYear(this)' οnchange='selectThisYear(this)' style='font-size:11px'>" +opt+ "</select>" ;
           obj.parentNode.innerHTML = opt;
}
function   selectThisYear(obj){
     HS_calender(obj.value+   "-" +obj.parentNode.parentNode.getElementsByTagName(   "span" )[1].getElementsByTagName(   "a" )[0].innerHTML+   "-1" ,obj.parentNode);
}
function   CalenderselectMonth(obj){
              var   opt =   "" ;
              var   thisMonth = obj.innerHTML;
              for   (i=1; i<=12; i++){
                   if   (i==thisMonth){
                     opt +=   "<option value=" +i+ " selected>" +i+ "</option>" ;
                }   else {
                     opt +=   "<option value=" +i+ ">" +i+   "</option>" ;
                }
           }
           opt =   "<select οnblur='selectThisMonth(this)' οnchange='selectThisMonth(this)' style='font-size:11px'>" +opt+ "</select>" ;
           obj.parentNode.innerHTML = opt;
}
function   selectThisMonth(obj){
     HS_calender(obj.parentNode.parentNode.getElementsByTagName(   "span" )[0].getElementsByTagName(   "a" )[0].innerHTML+   "-" +obj.value+   "-1" ,obj.parentNode);
}
function   HS_setDate(inputObj){
      var   calenderObj = document.createElement(   "span" );
     calenderObj.innerHTML = HS_calender(   new   Date());
     calenderObj.style.position =   "absolute" ;
     calenderObj.targetObj = inputObj;
     inputObj.parentNode.insertBefore(calenderObj,inputObj.nextSibling);
}
    </ script   >
< style >
    body   { font-size : 12px }
    td   { text-align : center }
    h1   { font-size : 26px ;}
    h4   { font-size : 16px ;}
    em   { color : #999 ;   margin : 0 10px ;   font-size : 11px ;   display : block }
    </ style   >



<body>里面
            <%
                        Calendar cal =   new   GregorianCalendar();
                           cal.add(Calendar.DAY_OF_MONTH,-7);
                           java.text.SimpleDateFormat sdf =   new   java.text.SimpleDateFormat( "yyyy-MM-dd"   );
                           String priorDate=sdf.format(cal.getTime());
                        %>

                              <%   Calendar cal1 =   new   GregorianCalendar();
                        //cal1.add(Calendar.DAY_OF_MONTH,1);
                           java.text.SimpleDateFormat sdf1 =   new   java.text.SimpleDateFormat( "yyyy-MM-dd"   );
                           String nowDate=sdf1.format(cal1.getTime()); %>

<%
                     String dateBegin = request.getParameter( "datebegin"   );
                     String dateEnd = request.getParameter( "dateend"   );
                        if (   null   == dateBegin  ||   null   == dateEnd)
                     {
                        dateBegin=priorDate;
                        dateEnd=nowDate;
                     }

                   %>   


&nbsp; 开始日期:   < input   type   = "text"   style =   "width:70px"   name   = "datebegin"   id = "datebegin"     value =   <%= dateBegin   %>   onfocus   = "HS_setDate(this)"   size =   "9"   />
&nbsp; 结束日期:   < input   type   = "text"   style =   "width:70px"   name   = "dateend"   id = "dateend"     value =   <%= dateEnd   %>   onfocus   = "HS_setDate(this)"     size =   "9"   />
&nbsp; < input   class   = "inputtutton"   name =   "search"   type   = "button"   onclick = "doSearch()"   value =   "查询"     /> &nbsp;




问题二:
js时间验证控件  开始日期要小于结束日期:
//改 过代码
            function   doSearch(){
          
                      var   start=document.getElementById( "datebegin"   ).value;
                      var   end=document.getElementById( "dateend"   ).value;
                     
                
                        if ((getDate(start)-getDate(end)>0)){
                            alert(   "结束时间不能小于开始时间"   );
                           
                              return ;
                    }           

                     var   formName=document.forms[   "form1" ];             
                   formName.action=   "totalSearch.bester" ;
                
                  formName.submit();
          }
         
              function   getDate(date){
                    var   dates = date.split(   "-" );
                    var   dateReturn =   '' ;
 
                   for (   var   i=0; i<dates.length; i++){
                    dateReturn+=dates[i];
                }
                 return   dateReturn;
           }
           

                                                           
  &nbsp; 开始日期:   < input   class   = "Wdate"   name = "datebegin"   id =   "datebegin"     value   = <%=   priorDate %>   onfocus = "WdatePicker({dateFmt:'yyyy-MM-dd'})"   size   = "9"   />
&nbsp; 结束日期:   < input   class   = "Wdate"   name = "dateend"   id =   "dateend"   value   = <%=   nowDate %>   onfocus = "WdatePicker({dateFmt:'yyyy-MM-dd'})"   size   = "9"   />
          &nbsp;   &nbsp;
  < input   class   = "inputtutton"   name = "search"   type =   "button"   onclick   = "doSearch()"   value   = "查询"   /> &nbsp;                                                                          


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值