Bootstrap datepicker - 如何以其他格式获取toDisplay,以及其他格式的toValue

时间:2017-06-16 14:01:41

标签: javascript jquery twitter-bootstrap datepicker bootstrap-datepicker

很长一段时间以来,我在toValuetoDisplay时遇到了问题。我需要并在显示屏上显示格式 dd.mm.yyyy 和u toValue的日期,它与表单一起发送,以便它在 yyyy-mm-dd < / em>格式。我尝试了各种各样的东西,但它仍然无效。 我附上了插件官方网页上的代码。

toDisplay: function (date, format, language) {
        var d = new Date(date);
        d.setDate(d.getDate() - 7);
        return d.toISOString();
},
toValue: function (date, format, language) {
        var d = new Date(date);
        d.setDate(d.getDate() + 7);
        return new Date(d);
}

提前感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

我遇到了完全相同的问题,很难找到一个可行的解决方案......

最后,我不得不放弃尝试使用该功能获得正确的格式, 我只是使用另一个隐藏的输入字段来存储要提交的日期格式,这会在日历更改时更新。 我用了moment.js来

标记

 <input placeholder="dd.mm.yyyy" class="form-control datepicker" id="birthday" name="person[birthday]" value="01.01.1970" type="text"> 
 <input id="birthday-val" name="person[birthday]" value="1970-01-01" type="hidden"> 

<script>
$('.datepicker').datepicker({
    autoclose: true,
    locale:  'de',
    format:  'dd.mm.yyyy'
});
$('.datepicker').on('changeDate', function(e){
    //console.log( moment(e.date).format('YYYY-MM-DD') );
    $(this).next('input[type=hidden]').val( moment(e.date).format('YYYY-MM-DD') );
});
</script>

希望有所帮助。

答案 1 :(得分:0)

 $("#elementID").datepicker({
        format: "dd/mm/yyyy", // or what ever format your want
        calendarWeeks: true,
        todayHighlight: true,
        clearBtn: true,
        autoclose: true
    });

在页面中包含moment.js库,然后

var date = moment($('#elementID').datepicker("getDate")).format("YYYY/MM/DD");