组装当年所有周 日期范围数据,下拉列表(如"第x周 xxxx年/xx月/xx日")

 1 //
 2 var options = "";//用于绑定周下拉
 3 var SetWFD = 1;//设置周一为一周起始 7为周日
 4 var firstDayOfYear = new Date(yearSelected, 0, 1);//元旦
 5 var YDDayOfWeek = firstDayOfYear.getDay() == 0 ? 7 : firstDayOfYear.getDay();//周日需要转化成7,不然计算会比较麻烦
 6 var addDays = YDDayOfWeek > SetWFD ? (7 - (YDDayOfWeek - SetWFD)) : (SetWFD - YDDayOfWeek);
 7 firstDayOfYear.addDays(addDays);//每年的第一周是:第一次经过周起始日的那周(如以周一为周起始日,那么新年第一次周一那周为第一周)
 8 var day = firstDayOfYear.clone();
 9 var weekNum = 1;
10 while (day.getFullYear() == firstDayOfYear.getFullYear()) {
11     var startTime = day;
12     var start = startTime.Format("yyyy/MM/dd");
13     var endTime = startTime.clone();
14     endTime.addDays(6);
15     var end = endTime.Format("yyyy/MM/dd");
16     if ((startTime <= now && now < endTime) || (weekNum == 1 && ((startTime < now && endTime < now) || (startTime > now && endTime > now)))) {
17         selectItem = start + '-' + end;
18         options += '<option value="' + start + '-' + end + '" selected="selected">第' + weekNum + '周(' + start + '-' + end + ')</option>';
19     } else {
20         options += '<option value="' + start + '-' + end + '">第' + weekNum + '周(' + start + '-' + end + ')</option>';
21     }
22     weekNum++;
23     day.addDays(7);
24 }

酌情使用

https://www.cnblogs.com/5MBPerSec/p/12154882.html 其中的addDays 参照这里

猜你喜欢

转载自www.cnblogs.com/5MBPerSec/p/12157824.html
今日推荐