【问题标题】:Angular-UI Bootstrap Datepicker new dateAngular-UI Bootstrap Datepicker 新日期
【发布时间】:2015-07-10 12:50:36
【问题描述】:

我正在为我的项目使用Angular-UI Bootstrap Datepicker 指令。我想要做的是,当我单击按钮时,日期选择器值正在按预期更新,但是,日期选择器弹出窗口显示错误的日期。我正在使用dd.MM.yyyy 格式。它显示mm.dd.YYYY 而不是dd.MM.yyyy。是错误还是我遗漏了什么?

function appConfig(datepickerConfig, datepickerPopupConfig) {
        datepickerConfig.startingDay = 1;
        datepickerPopupConfig.datepickerPopup = 'dd.MM.yyyy';
}

Plnkr

【问题讨论】:

  • 你能包含你的 datepickerConfig 吗?
  • 配置你的日期选择器和弹出窗口。
  • @Mateutek 我已经配置好了。
  • 很有趣,它似乎在我的实例上运行良好。只是为了确认我们仍在讨论格式化日期选择器弹出窗口?
  • 你能分享你的实例吗?显示的是 10 月 1 日还是 1 月 10 日?

标签: javascript angularjs twitter-bootstrap datepicker angular-ui


【解决方案1】:

据我了解,日期选择器工作得很好。问题是您使用this.date = "01.10.2015" 更改控制器中的值。

您可以考虑使用 this.date = new Date(2015,9,1) 执行此操作,因为 date 在后台属于 date 类型。该指令关心这些格式的转换。

编辑: 如果你想坚持自己的方式,你可以使用这样的解析函数(找到它here):

function parseDate(input) {
  var parts = input.match(/(\d+)/g);
  return new Date(parts[2], parts[1]-1, parts[0]);
}

然后打电话:

this.date = parseDate("01.10.2015")

Here 是你更新的 plunker。

【讨论】:

  • 我有一个json格式beOnLeaveDate: 15.07.2015。我决定将 json 的日期格式更改为 ISO 8601 语法。所以它按预期工作。顺便谢谢你的回答:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-12-03
  • 2016-06-09
相关资源
最近更新 更多