使用datetimepicker插件格式化日期

问题描述 投票:-1回答:1

我正在使用datetimepicker选项(http://trentrichardson.com/examples/timepicker/#basic_examples)。

$('#basic_example_3').datetimepicker({
    timeFormat: "hh:mm tt"
});

[如果用户未选择小时或分钟(即2014年12月11日上午12:00),我不希望显示时间,而只显示2014年12月11日。我意识到我可以使用onClose,并使用JavaScript手动调整时间,但是我在问是否有使用插件的更好方法。

另外,我会将日期时间发送到服务器,并希望它采用DATETIME格式(即2014-12-11 18:30:00)。我可以在服务器端解析它,但是我在问是否有使用插件的更好方法。

javascript jquery jquery-ui jquery-ui-datepicker datetimepicker
1个回答
0
投票

不是一个非常优雅的解决方案,但是它可以工作。理想情况下,不使用moment(),而是使用某些嵌入式datetimepicker方法。我尝试这样做,但似乎无法访问小时和分钟。

$('#basic_example_3').datetimepicker({
    stepMinute: 5,
    timeFormat: "hh:mm tt",
    onClose: function(dateText, inst){
        var datetime = moment(dateText, 'MM/DD/YYYY hh:mm a').format('YYYY-MM-DD HH:mm:ss'); //  12/11/2014 12:00 am => 2014-12-11 18:30:00
        dateText = dateText.replace(/12:00 am$/, '');   //Get rid of minutes if midnight
        $(this).val(dateText);
        $.post('ajax.php',{datetime:datetime},function(json) {
            //display errors if necessary
            }
        );
}});
© www.soinside.com 2019 - 2024. All rights reserved.