JS:从DatePicker返回的更改日期格式

时间:2015-07-17 13:11:47

标签: javascript date datepicker

我对JS并不擅长,所以我对日期有疑问。

我想为我的DatePickers设置范围 - 这就是为什么当日期改变时,我会用以下格式得到它:

2015年7月8日星期三00:00:00 GMT + 0200(CEST)

我需要将格式dd / mm / yyyy更改为日期,以便稍后使用该值。直到现在看起来如下:

var nowTemp = new Date();
$("#datepickerStart").on("changeDate", function (e) {
    minDate = e.date;
    console.log(minDate);  // Wed Jul 08 2015 00:00:00 GMT+0200 (CEST)
//        day = minDate.getDate(); <- doesn't work
//        monthIndex = minDate.getMonth();
//        year = minDate.getFullYear();
});


 $('#datepickerStart').datepicker({
    format: "dd/mm/yyyy",
    startDate : new Date('01/01/2009'),
    endDate : new Date()
 });

 $('#datepickerEnd').datepicker({
    format: "dd/mm/yyyy",
    startDate : minDate,//""+day+"/"+monthIndex+"/"+year,<- tried different approaches
    endDate : new Date()
 });

如果我使用minDate.format(“dd / mm / yyyy”),则返回错误“Uncaught TypeError:minDate.format不是函数”。

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

执行此操作的一个不错的选择是使用momenjs库。

其他替代方法是您创建function格式化日期,如下所示:

&#13;
&#13;
var formatDate = function(d) {
  
    var date = d.getDate();
    var month = d.getMonth();
    var year = d.getFullYear();
    var newDate = (date < 10 ?  ('0' + date) : date) + '/' + (month < 10 ?  ('0' + month) : month) + '/' + year;

    alert(newDate);
}

// Usage example
var now = new Date();

formatDate(now)
&#13;
&#13;
&#13;