Datetime 如何使用文本字段编辑日期值
由于ExtJs缺少datetime字段,我认为在网格中编辑datetime值的最简单方法是使用textfield。我没有找到一个简单的例子来验证字段并为用户透明地更新记录 这是我网格中的列,我想在其中添加编辑器Datetime 如何使用文本字段编辑日期值,datetime,extjs,extjs6,Datetime,Extjs,Extjs6,由于ExtJs缺少datetime字段,我认为在网格中编辑datetime值的最简单方法是使用textfield。我没有找到一个简单的例子来验证字段并为用户透明地更新记录 这是我网格中的列,我想在其中添加编辑器 Ext.define('Fiddle.grid.DateEdit', { columns: [{ text: 'Datetime value', dataIndex: 'mydatetime', xtype:'datecolum
Ext.define('Fiddle.grid.DateEdit', {
columns: [{
text: 'Datetime value',
dataIndex: 'mydatetime',
xtype:'datecolumn',
format: 'Y-m-d H:i:s'
}]
})
这是一种最低限度的方法,可以为用户透明地处理验证和日期到字符串的转换:
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)}
}
}]
})