2013-08-20 10 views
-2

У меня есть datepicker, который работает, но я пытаюсь преобразовать его в объект даты, чтобы я мог getDay от него. Проблема заключается в том, что каждый раз я ее конвертирую, это дает мне неправильный формат, так как в нем будет 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 
     } 
    }); 
}); 

ответ

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

+0

Wow, работает !!!! СПАСИБО БОЛЬШОЕ!!!! – user1764339

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 
} 
Смежные вопросы