如何从当前日期前一个月获得日期,当前日期是一月?

时间:2017-01-19 07:42:11

标签: javascript jquery date rangeslider

我使用了一个名为jQRnageSlider的插件,并尝试在滑块中显示日期和时间标签,但当我将滑块向后滚动到去年时,12月变为11最终。

enter image description here

正常情况下,如果我不回滚到去年。

enter image description here

立即跳到2016年11月

这应该是日期格式问题。有人可以帮忙吗?

$(".date-range-slider").dateRangeSlider({    
  ...

  formatter: function(val){
    var days = ('0' + val.getDate()).slice(-2),
    month = ('0' + val.getMonth() + 1).slice(-2),
    year = val.getFullYear(),
    hour = ('0' + val.getHours()).slice(-2),
    min = ('0' + val.getMinutes()).slice(-2);
    return days + "-" + month + "-" + year + " " + hour + ":" + min;
  }
});

1 个答案:

答案 0 :(得分:0)

问题是该行:

month = ('0' + val.getMonth() + 1).slice(-2)

你想在数学上把它作为字符串求和,所以你应该这样做:

month = ('0' + (val.getMonth() + 1)).slice(-2)

检查代码段以查看代码实际返回的内容:

var val = new Date();
document.write('0' + val.getMonth() + 1)

返回更正后的版本:

var val = new Date();
document.write('0' + (val.getMonth() + 1))