【问题标题】:How to edit a datevalue with a textfield如何使用文本字段编辑日期值
【发布时间】:2017-06-12 07:23:22
【问题描述】:

由于 ExtJs 缺少日期时间字段,我认为在网格中编辑日期时间值的最简单方法是使用文本字段。我没有找到一个简单的示例来验证字段并为用户透明地更新记录。

这是我的网格中的列,我想在其中添加我的编辑器

Ext.define('Fiddle.grid.DateEdit', {
    columns: [{
        text: 'Datetime value', 
        dataIndex: 'mydatetime', 
        xtype:'datecolumn', 
        format: 'Y-m-d H:i:s'
    }]
})

【问题讨论】:

    标签: datetime extjs extjs6


    【解决方案1】:

    这是一种简约的方法,它为用户透明地处理验证和日期到字符串的转换:

    Ext.define('Fiddle.grid.DateEdit', {
        columns: [{
            text: 'Datetime value', 
            dataIndex: 'mydatetime', 
            xtype:'datecolumn', 
            format: 'Y-m-d H:i:s',
            editor: {
                xtype:'textfield',
                errorMessage: 'Invalid date format',
                format: 'Y-m-d H:i:s',
                validator: function(val){return val.match(/\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}/) ? true : this.errorMessage},
                valueToRaw: function(val){return Ext.Date.format(val, this.format)},
                rawToValue: function(val){return Ext.Date.parse(val, this.format)}
            }
        }]
    })
    

    【讨论】:

      猜你喜欢
      • 2023-03-11
      • 2019-06-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-27
      • 2011-05-30
      • 1970-01-01
      相关资源
      最近更新 更多