Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ag grid 在AG网格中定义编辑日期格式_Ag Grid_Date Formatting - Fatal编程技术网

Ag grid 在AG网格中定义编辑日期格式

Ag grid 在AG网格中定义编辑日期格式,ag-grid,date-formatting,Ag Grid,Date Formatting,我有一个SQL Server表,其中包含一个DATETIME列SaleDate——不幸的是,目前我无法将数据类型更改为仅DATE(这就足够了) 我正在尝试使用Ag网格在Angular应用程序中显示来自该列的数据 对于显示,我可以在我的Typescript代码中使用: columnDefs = [ .... { headerName: 'Sale', field: 'SaleDate', width: 120, editable: true, cellRenderer:

我有一个SQL Server表,其中包含一个
DATETIME
SaleDate
——不幸的是,目前我无法将数据类型更改为仅
DATE
(这就足够了)

我正在尝试使用Ag网格在Angular应用程序中显示来自该列的数据

对于显示,我可以在我的Typescript代码中使用:

columnDefs = [
    ....
    { headerName: 'Sale', field: 'SaleDate', width: 120, editable: true,
      cellRenderer: (data) => {
          return data.value ? (new Date(data.value)).toLocaleDateString('de-CH', this.options) : '';
    },
    ....
]
它工作得很好

但是,当我尝试编辑此单元格时,不幸的是,整个
DATETIME
详细信息(包括时间部分)正在显示:

[ 2018-09-27T08:43:59 ]

这会让用户很困惑。。。。那么,是否有一种方法可以设置/定义AG网格单元格中的编辑格式?

如果您需要为
显示
编辑
内容提供解决方法(准备视觉和真实数据),您应该为此单元格创建一个自己的和

或者,您只需为日历组件和显示日期创建一个
cellEditor

仅针对相同需求的案例
valueFormatter

let result: string;
if (params.value) {
    var formats = [
        moment.ISO_8601
    ];
    let date = moment(params.value, formats, true);

    if (date.isValid()) {
        let dateObject: Date = date.toDate();
        result = ('0' + dateObject.getDate()).slice(-2) + '.'
            + ('0' + (dateObject.getMonth() + 1)).slice(-2) + '.'
            + dateObject.getFullYear();
        if (element.DataType == "datetime")
            result += ' ' + ('0' + dateObject.getHours()).slice(-2) + ':'
                + ('0' + dateObject.getMinutes()).slice(-2) + ':'
                + ('0' + dateObject.getSeconds()).slice(-2);
    }
}
return result;
在自定义
cellEditor
上,主要功能是
getValue
函数,它将在内部使用(用于绑定)


在模板上,您可以使用任何日历模板库。

如果您需要为
显示
编辑
内容提供解决方案(准备视觉和真实数据),您应该为此单元格创建自己的And

或者,您只需为日历组件和显示日期创建一个
cellEditor

仅针对相同需求的案例
valueFormatter

let result: string;
if (params.value) {
    var formats = [
        moment.ISO_8601
    ];
    let date = moment(params.value, formats, true);

    if (date.isValid()) {
        let dateObject: Date = date.toDate();
        result = ('0' + dateObject.getDate()).slice(-2) + '.'
            + ('0' + (dateObject.getMonth() + 1)).slice(-2) + '.'
            + dateObject.getFullYear();
        if (element.DataType == "datetime")
            result += ' ' + ('0' + dateObject.getHours()).slice(-2) + ':'
                + ('0' + dateObject.getMinutes()).slice(-2) + ':'
                + ('0' + dateObject.getSeconds()).slice(-2);
    }
}
return result;
在自定义
cellEditor
上,主要功能是
getValue
函数,它将在内部使用(用于绑定)

在模板上,您可以使用任何日历模板库