在SAPUI5之后从datepicker中选择后更改日期格式

时间:2017-11-17 06:06:37

标签: javascript date datepicker sapui5 date-formatting

我有一个日期选择器,我想从中提取日期并在标签中显示。目前日期以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>

2 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:0)

仅供参考,通过获取视图控件并更新其中的属性并不好。如果你有一个模型会很好。

您的问题的解决方案如下,

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