在數據報表查詢中,常常須要設置查詢的日期區間,如查詢2018-02-01至2018-02-28的整月數據,這時須要提供快捷整月查詢按鈕: 如:函數
通常日期年月日之間由「-」或者「/」等符合分割開,簡單判斷當前月份進行處理便可。另外,如何獲取所選月份的最大天數是關鍵,這裏能夠藉助js自帶Date函數來處理,關鍵在於定位到所選月份的最後一天code
關鍵代碼以下:get
function changeMonth(type) { //獲取當前輸入框內的日期 var s_date = $("input[name='s_date']").val(); var e_date = $("input[name='e_date']").val(); var arr = s_date.split("-"); var year = parseInt(arr[0]), month = parseInt(arr[1]), day = parseInt(arr[2]); var year2 = year, month2 , day2; //取上一個月 if(type == 'pre') { month2 = month - 1; if(month2 == 0) { //如當前是一月份 month2 = 12; year2 = year - 1; } } else { month2 = month + 1; if(month2 == 13) { month2 = 1; year2 = year + 1; } } //輸出所選月份的第一天 var start = year2 + "-" + month2 + "-" + "1"; //獲取當前 var date = new Date(start); var year = date.getFullYear(); var month = date.getMonth()+1; var d = new Date(year,month,0); //下一個月的前一天 var end = year2 + "-" + month2 + "-" + d.getDate(); console.log(start,end); //設置當前時間input的值 $("input[name='s_date']").val(start); $("input[name='e_date']").val(end); }