在 SAPUI5 之后从日期选择器中选择后更改日期格式
Changing the format of date after picking from datepicker after SAPUI5
我有一个日期选择器,我想从中提取日期并显示在标签中。目前日期以 MM/DD/YYYY 格式显示,但我希望它以 MMM dd, yyyy 格式显示(2017 年 11 月 17 日)。下面是代码:
screenDate=view.byId("screeningDate").getValue();
var date = view.byId("__date");
date.setText(screenDate);
XML :
<HBox alignItems="Center" renderType="Bare">
<Label text="Date of Screening" width="50%"/>
<DatePicker class="sapUiLargeMarginBegin" width="50%" id="screeningDate"/>
</HBox>
仅供参考,通过获取视图控件并更新其中的 属性 并不好。要是有模型就好了
您的问题的解决方案如下,
<Label text="{
path: '/date',
type: 'sap.ui.model.type.Date',
formatOptions: {
style: 'medium',
pattern: 'MMM dd, yyyy'
}}"/>
<DatePicker dateValue="{/date}"/>
在控制器中我有一个 JSONModel,如下所示,
onInit : function() {
this.model = new JSONModel({
date : new Date(0)
});
this.getView().setModel(this.model);
}
除了 Naveen 的回答之外,这里还有使用您现有代码的解决方案:
screenDate=view.byId("screeningDate").getValue();
var date = view.byId("__date");
// Make date object out of screenDate
var dateObject = new Date(screenDate);
// SAPUI5 date formatter
var dateFormat = sap.ui.core.format.DateFormat.getDateInstance({pattern : "MMM dd,YYYY" });
// Format the date
var dateFormatted = dateFormat.format(dateObject);
date.setText(dateFormatted);
我有一个日期选择器,我想从中提取日期并显示在标签中。目前日期以 MM/DD/YYYY 格式显示,但我希望它以 MMM dd, yyyy 格式显示(2017 年 11 月 17 日)。下面是代码:
screenDate=view.byId("screeningDate").getValue();
var date = view.byId("__date");
date.setText(screenDate);
XML :
<HBox alignItems="Center" renderType="Bare">
<Label text="Date of Screening" width="50%"/>
<DatePicker class="sapUiLargeMarginBegin" width="50%" id="screeningDate"/>
</HBox>
仅供参考,通过获取视图控件并更新其中的 属性 并不好。要是有模型就好了
您的问题的解决方案如下,
<Label text="{
path: '/date',
type: 'sap.ui.model.type.Date',
formatOptions: {
style: 'medium',
pattern: 'MMM dd, yyyy'
}}"/>
<DatePicker dateValue="{/date}"/>
在控制器中我有一个 JSONModel,如下所示,
onInit : function() {
this.model = new JSONModel({
date : new Date(0)
});
this.getView().setModel(this.model);
}
除了 Naveen 的回答之外,这里还有使用您现有代码的解决方案:
screenDate=view.byId("screeningDate").getValue();
var date = view.byId("__date");
// Make date object out of screenDate
var dateObject = new Date(screenDate);
// SAPUI5 date formatter
var dateFormat = sap.ui.core.format.DateFormat.getDateInstance({pattern : "MMM dd,YYYY" });
// Format the date
var dateFormatted = dateFormat.format(dateObject);
date.setText(dateFormatted);