通过选择时间获取当前时间属于本年的第几周的方法以及其他几种时间控件

1.时间转为本周第几周的问题,首先jsp

<input readonly class="easyui-textbox Wdate" type="text" id="weekFmt1" name="weekFmt1" value=""οnclick="WdatePicker({isShowWeek:true,el:'chooseDate1',dateFmt:'yyyy-MM-dd',oncleared:funclean1,onpicked:funccc1})" style="width:60%;"/>

 

然后js:通过以后js就能将选择的时间转为当年的第几周

//周日期选择
function funccc1(){
	var year = $dp.cal.getP('y');
	if($dp.cal.getP('M')==12 && $dp.cal.getP('W')==1){//若选择的日期是月份12但是返回的周为1
		year = parseInt(year)+1;
	}
	if($dp.cal.getP('M')==1 && $dp.cal.getP('W')>50){//若选择的日期是月份1但是返回的周很大
		year = parseInt(year)-1;
	}
	var week = $dp.cal.getP('W','WW');
	var weekFmt = year+"年"+$dp.cal.getP('W','WW')+"周";
	$("#weekFmt1").val(weekFmt);
	$.ajax({
        cache: true,
        type: "POST",
        url:'weekplantask_formateWeek.do',
        data:{year:year,week:week},
        async: false,
        success: function(result) {
        	 if (result.StartDayOfWeekNo == undefined) {
	  				result = eval('(' + result + ')');
	  			}
        	 var StartDayOfWeekNo=result.StartDayOfWeekNo;
        	 var EndDayOfWeekNo=result.EndDayOfWeekNo;
        	$('#showbegdate1').text(StartDayOfWeekNo);
        	$('#showbegdate2').text('至'+EndDayOfWeekNo);
        }
	});
}
//周日期清除
function funclean1(){
	$("#week1").val("");
	$("#weekFmt1").val("");
	return;
}

3.如果需要本周星期一的开始日期  以及本周的结束日期,通过ajax去后台处理,附上代码:

首先通过周期获取年周

    String year1=request.getParameter("year");
            String week1=request.getParameter("week");
            int year=Integer.valueOf(year1);
            int week=Integer.valueOf(week1);

然后通过工具类获取每一天的日期:eg:2015年12周



import java.util.Calendar;




public class WeekUtils {

        
      /*  public static void main(String[] args) {  
              
            WeekUtils cd = new WeekUtils();  
            System.out.println("开始时间: " + cd.getStartDayOfWeekNo(2017,9) );  
            System.out.println("结束时间:" + cd.getEndDayOfWeekNo(2017,9) );      
              
        }*/  
          
        /** 
         * get first date of given month and year 
         * @param year 
         * @param month 
         * @return 
         */  
        public String getFirstDayOfMonth(int year,int month){  
            String monthStr = month < 10 ? "0" + month : String.valueOf(month);  
            return year + "-"+monthStr+"-" +"01";  
        }  
          
        /** 
         * get the last date of given month and year 
         * @param year 
         * @param month 
         * @return 
         */  
        public String getLastDayOfMonth(int year,int month){  
            Calendar calendar = Calendar.getInstance();  
            calendar.set(Calendar.YEAR , year);  
            calendar.set(Calendar.MONTH , month - 1);  
            calendar.set(Calendar.DATE , 1);  
            calendar.add(Calendar.MONTH, 1);  
            calendar.add(Calendar.DAY_OF_YEAR , -1);  
            return calendar.get(Calendar.YEAR) + "-" + (calendar.get(Calendar.MONTH) + 1) + "-" +  
                   calendar.get(Calendar.DAY_OF_MONTH);  
        }  
          
        /** 
         * get Calendar of given year 
         * @param year 
         * @return 
         */  
        private Calendar getCalendarFormYear(int year){  
            Calendar cal = Calendar.getInstance();  
            cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);        
            cal.set(Calendar.YEAR, year);  
            return cal;  
        }  
          
        /** 
         * get start date of given week no of a year 
         * @param year 
         * @param weekNo 
         * @return 
         */  
        public String getStartDayOfWeekNo(int year,int weekNo){  
            Calendar cal = getCalendarFormYear(year);  
            cal.set(Calendar.WEEK_OF_YEAR, weekNo);  
            return cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-" +  
                   cal.get(Calendar.DAY_OF_MONTH);      
              
        }  
        /**
         * 周二
         * @param year
         * @param weekNo
         * @return
         */
        public String getTuesdayOfWeekNo(int year,int weekNo){  
            Calendar cal = getCalendarFormYear(year);  
            cal.set(Calendar.WEEK_OF_YEAR, weekNo);  
            cal.add(Calendar.DAY_OF_WEEK, 1);  
            return cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-" +  
                   cal.get(Calendar.DAY_OF_MONTH);      
        }
        /**
         * 周三
         * @param year
         * @param weekNo
         * @return
         */
        public String getWednesdayOfWeekNo(int year,int weekNo){  
            Calendar cal = getCalendarFormYear(year);  
            cal.set(Calendar.WEEK_OF_YEAR, weekNo);  
            cal.add(Calendar.DAY_OF_WEEK, 2);  
            return cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-" +  
                   cal.get(Calendar.DAY_OF_MONTH);      
        }
        /**
         * 周四
         * @param year
         * @param weekNo
         * @return
         */
        public String getThursdayOfWeekNo(int year,int weekNo){  
            Calendar cal = getCalendarFormYear(year);  
            cal.set(Calendar.WEEK_OF_YEAR, weekNo);  
            cal.add(Calendar.DAY_OF_WEEK, 3);  
            return cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-" +  
                   cal.get(Calendar.DAY_OF_MONTH);      
        }
        /**
         * 周五
         * @param year
         * @param weekNo
         * @return
         */
        public String getFridayOfWeekNo(int year,int weekNo){  
            Calendar cal = getCalendarFormYear(year);  
            cal.set(Calendar.WEEK_OF_YEAR, weekNo);  
            cal.add(Calendar.DAY_OF_WEEK, 4);  
            return cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-" +  
                   cal.get(Calendar.DAY_OF_MONTH);      
        }
        /** 
         * get the end day of given week no of a year. 
         * @param year 
         * @param weekNo 
         * @return 
         */  
        public String getEndDayOfWeekNo(int year,int weekNo){  
            Calendar cal = getCalendarFormYear(year);  
            cal.set(Calendar.WEEK_OF_YEAR, weekNo);  
            cal.add(Calendar.DAY_OF_WEEK, 6);  
            return cal.get(Calendar.YEAR) + "-" + (cal.get(Calendar.MONTH) + 1) + "-" +  
                   cal.get(Calendar.DAY_OF_MONTH);      
        }  
    }  

第一张的日期作法如上!

2.

<input id="benDate" name="benDate"  class="Wdate" 
					style="height:32px;  width: 140px;  cursor: hand; vertical-align: middle;margin-left:0px;"
					onclick="WdatePicker({dateFmt:'yyyy-MM-dd',minDate:'%y-%M-%d',maxDate:'#F{$dp.$D(\'endDate\')}'})" />
					~				 
	              <td class="td_t" align="left">
	              	<input id="endDate" name="endDate"  class="Wdate"
					style="height:32px;width:140px; cursor: hand; vertical-align: middle;margin-left:0px;"
					onclick="WdatePicker({dateFmt:'yyyy-MM-dd',minDate:'#F{$dp.$D(\'benDate\')}'})" />
	              </td>   



$(function(){
	//初始化开始和结束日期
	$('#benDate').val(_getCurDate());
	$('#endDate').val(_getCurDate());}

3、月份

<input id="taskMonth" name="taskMonth" readonly
								class="Wdate" style="width: 140px; cursor: hand; vertical-align: middle;"
								onclick="WdatePicker({dateFmt:'yyyy-MM'})" />

 

转载于:https://my.oschina.net/u/3053442/blog/852639

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值