5

我正在为 datepicker 使用 pikaday 模块,但格式不合适。我尝试添加这行代码但仍然无法正常工作:

.config(['pikadayConfigProvider', function (pikaday) {
    pikaday.setConfig({
        numberOfMonths: 1,
        format: "YYYY/MM/DD"
    });
}]) 

这就是我的 html 的样子:

<div class="modal-body">
  <form role="form">
    <div class="form-group">
      <input type="text" class="form-control" pikaday="myPickerObject" name="time" ng-model="clas.class_.time" placeholder="Enter time" tabindex="3">
    </div>
  </form>
</div>

还尝试添加为内联属性

格式=“年年/月/日”

还是行不通。

任何帮助

4

3 回答 3

3

您可以使用 moment.js 并通过设置设置格式

defaultDate : moment().format("MMM YYYY")

这将是初始输入日期显示格式。要以其他所需格式显示/处理日期,请使用

var field = document.getElementById('datepicker');
var picker = new Pikaday({
onSelect: function(date) {
    field.value = this.getMoment().format('Do MMMM YYYY');
    }
});
于 2016-07-26T00:19:19.290 回答
2

使用 moment.js 设置日期格式:

var picker = new Pikaday(
{
    field: document.getElementById('eDate'),
    toString(date, format) { // using moment
        return moment(date).format('MM/DD/YYYY');
    },
});
于 2019-09-12T14:53:28.103 回答
0

快速更新,如果不想使用moment.js,可以fdo如下

new Pikaday({
    field: document.getElementById('eDate'), 
    toString: function(date) {
        var parts = [('0'+date.getDate()).slice(-2), ('0'+(date.getMonth()+1)).slice(-2), date.getFullYear()];
        return parts.join("-");
    }
})

这将产生 18-07-1980。您可以通过更改 return parts.join("-"); 从 '-' 更改为 '/' 您可以重新排列零件以通过零件阵列应用 mm/dd/yyyy

于 2021-09-17T00:51:48.283 回答