如何转换日期格式?

时间:2013-08-20 03:09:02

标签: javascript jquery datetime datepicker

我有一个有效的datepicker,但我试图将它转换为日期对象,以便我可以从中获取。问题是每次我转换它,它给我错误的格式,因为它将是MM / dd / yy,而不是dd / MM / yy。

<script type="text/javascript">
$(document).ready(function () {
    $('#<%=txtDateTime.ClientID%>').datepicker({
        dateFormat: 'dd/mm/yy',
        onSelect: function (date) {
            alert(new Date(Date.parse(date))); //this keeps giving month/day/year
        }
    });
});

2 个答案:

答案 0 :(得分:0)

使用datepicker的parseDate解析自定义格式化日期

$(document).ready(function () {
    $('#test').datepicker({
        dateFormat: 'dd/mm/yy',
        onSelect: function (date) {
            var dt = $.datepicker.parseDate( 'dd/mm/yy', date)
            alert(dt.getDate()); 
        }
    });
});

演示:Fiddle

答案 1 :(得分:0)

Date.parse方法取决于实现。 new Date(string)相当于Date.parse(string)

我建议手动解析日期字符串,并使用带有年,月和日参数的Date构造函数来避免歧义:

// parse a date in yyyy-mm-dd format
function parseDate(input) {
  var parts = input.split('/');
  // new Date(year, month [, date [, hours[, minutes[, seconds[, ms]]]]])
  return new Date(parts[0], parts[1]-1, parts[2]); // months are 0-based
}