Bootstrap datepicker — 如何获取其他格式的 toDisplay 和其他格式的 toValue

Posted

技术标签:

【中文标题】Bootstrap datepicker — 如何获取其他格式的 toDisplay 和其他格式的 toValue【英文标题】:Bootstrap datepicker — How to get toDisplay in other format and toValue in other format too 【发布时间】:2017-11-19 08:20:25 【问题描述】:

很长一段时间以来,toValuetoDisplay 都有问题。我需要并出现在显示屏上以格式 dd.mm.yyyy 和 u toValue 显示日期,它与表单一起发送,以便它位于 yyyy-mm-dd 格式。我尝试了各种各样的东西,但它仍然不起作用。 我附上插件官方页面的代码。

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);

提前感谢您的帮助!

【问题讨论】:

【参考方案1】:

我遇到了完全相同的问题,并且一直在努力寻找可行的解决方案...

最后我不得不放弃尝试使用该功能获得正确的格式, 我只是使用另一个隐藏的输入字段来存储要提交的日期格式,它会随着日历的变化而更新。 我用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>

希望对您有所帮助。

【讨论】:

【参考方案2】:
 $("#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");

【讨论】:

以上是关于Bootstrap datepicker — 如何获取其他格式的 toDisplay 和其他格式的 toValue的主要内容,如果未能解决你的问题,请参考以下文章

使用 bootstrap-datepicker 时如何不显示移动键盘?

如何在 Django 应用程序中使用 bootstrap-datepicker?

如何实现和使用 eyecon 的 bootstrap-datepicker?

如何将最佳就地与 bootstrap-datepicker 集成

如何在输入 Bootstrap Datepicker 中仅显示年份?

如何将 Bootstrap Datepicker Anchor Position 更改为居中?