码迷,mamicode.com
首页 > Web开发 > 详细

JS 如何获取当前上一个月、下一个月和月份所含天数

时间:2018-06-19 14:01:34      阅读:407      评论:0      收藏:0      [点我收藏+]

标签:自带   按钮   block   最大   设置   spl   pre   第一天   技术   

在数据报表查询中,经常需要设置查询的日期区间,如查询2018-02-01至2018-02-28的整月数据,这时需要提供快捷整月查询按钮:
如:技术分享图片

一般日期年月日之间由“-”或者“/”等符合分割开,简单判断当前月份进行处理即可。另外,如何获取所选月份的最大天数是关键,这里可以借助js自带Date函数来处理,关键在于定位到所选月份的最后一天

关键代码如下:

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);
    }

JS 如何获取当前上一个月、下一个月和月份所含天数

标签:自带   按钮   block   最大   设置   spl   pre   第一天   技术   

原文地址:https://www.cnblogs.com/chq3272991/p/9197931.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!