我尝试使用datepicker:https://sensortower.github.io/daterangepicker来获得淘汰赛的日期选择器。
一切都好,但我也希望选择器本身的自定义日期字段为" DD-MM-YYY" (而不是目前" DD / MM / YYYY"
我的模板定义是:
<input type="text" readonly class="form-control"
data-bind=" daterangepicker: dateRange,
daterangepickerOptions: {
maxDate: [moment().add(20,'years')],
ranges: {
'Komende maand': [moment(), moment().add(1,'month')],
'Komende week': [moment(), moment().add(1,'week')],
'Altijd': 'all-time',
'Aangepast:': 'custom'
},
periods: ['day'],
locale: 'nl',
timeZone: null
},
daterangepickerFormat: 'DD-MM-YYYY'," />
因此在选择器本身中它会显示要更改的当前日期,但这些日期仍在&#34; en&#34;格式。
答案 0 :(得分:2)
您确定支持nl
区域设置标记吗?将其替换为:
locale: { inputFormat: 'DD-MM-YYYY' },
并且标签发生变化。
我试图找出哪个库的源代码呈现了您想要更改的标签。结果发现有一个名为inputFormat
的设置,应该存储在locale
对象中。
以下是默认设置应用于此对象的方式:
Config.prototype._locale = function(val) {
return $.extend({
applyButtonTitle: 'Apply',
cancelButtonTitle: 'Cancel',
inputFormat: 'L',
startLabel: 'Sart',
endLabel: 'End'
}, val || {});
};
您会看到"L"
值被用作默认格式,从而产生DD/MM/YYYY
字符串。使用字符串(模板中的"nl"
)扩展对象对我来说没有多大意义,所以我的猜测是你必须创建自己的设置对象。您可以从moment.js的语言环境设置计算它。
(我在其中汇总了一个文件,其中包含您正在使用的所有库,并显示我的提案有效:this answer)