1、获取当前周、上一周、下一周日期
var cells = document.getElementById('monitor').getElementsByTagName('td');
var clen = cells.length;
var currentFirstDate;
var formatDate = function(date){
var year = date.getFullYear()+'年';
var month = (date.getMonth()+1)+'月';
var day = date.getDate()+'日';
var week = '('+['星期天','星期一','星期二','星期三','星期四','星期五','星期六'][date.getDay()]+')';
return year+month+day+' '+week;
};
var addDate= function(date,n){
date.setDate(date.getDate()+n);
return date;
};
var setDate = function(date){
var week = date.getDay()-1;
date = addDate(date,week*-1);
currentFirstDate = new Date(date);
for(var i = 0;i<clen;i++){
cells[i].innerHTML = formatDate(i==0 ? date : addDate(date,1));
}
};
document.getElementById('last-week').onclick = function(){
setDate(addDate(currentFirstDate,-7));
};
document.getElementById('next-week').onclick = function(){
setDate(addDate(currentFirstDate,7));
};
setDate(new Date());
参考:http://www.qdfuns.com/notes/18184/435de54dd1e41baf6777039e394c0100.html
2、设置js从周一到周日,而不是从周日到周六:
addDate(date,n){
date.setDate(date.getDate()+n);
return date;
},//总入口
setDate(date){
this.weekCalendar.weekHeader = [];
this.weekCalendar.weekBody = [];
//这个判断是为了抵消添加了7天后currentFirstDate变成了7天后的数据
if(this.weekCalendar.currentLastDate){
this.weekCalendar.currentFirstDate = this.weekCalendar.currentLastDate;
}
//注意:周日date.getDay()=0,所以要退6天,就要赋值day=7
let day = date.getDay();
if(day == 0){
day = 7;
}
var week = day - 1;
date = this.addDate(date,week*-1);
this.weekCalendar.currentFirstDate = new Date(date);
} </code></pre>
3、js日期总结:
1、new Date()是获取当前时间,就算你用setDate setMonth了它还是当前时间
如下面例子:
let date = new Date();
alert(date.pattern('yyyy-MM-dd'))
date.setDate(1)
alert(date.pattern('yyyy-MM-dd'))
date = new Date();
alert(date.pattern('yyyy-MM-dd'))
2、month 设置setMonth -1或者 +1会出现问题,已经有人遇到 这个问题:
参考1:http://blog.csdn.net/butterfly5211314/article/details/52742295
2:https://yq.aliyun.com/ziliao/69110
暂时解决办法:
setMonth(-1 +1)的同时设置setDate(1)
4、axios结合springMvc总结
1)@H_404_21@ 前台:axios.post(url,params) @H_404_21@ 后台:(@RequestBody Params params)
2)@H_404_21@ 前台:axios.post(url,qs.stringify(params))@H_404_21@ 后台两种:(@RequestParam String paramsOfOne,@RequestParam String paramsOfTwo)@H_404_21@(HttpServletRequest request)String paramsOfOne = request.getParameter("paramsOfOne");
3)@H_404_21@前台:axios.post(url/${id})@H_404_21@后台:(@PathVariable String id)
JSON.parse(JSON.stringify(res_data.menus).replace(/__child_list/gi,"children").replace(/menu_name/gi,"title"));