You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
57 lines
1.7 KiB
JavaScript
57 lines
1.7 KiB
JavaScript
Ext.define('Ext.ux.form.DateTimeField', {
|
|
extend: 'Ext.form.field.Date',
|
|
alias: 'widget.datetimefield',
|
|
requires: ['Ext.picker.Date'],
|
|
|
|
format: "Y-m-d H:i:s",
|
|
altFormats: "Y-m-d H:i:s",
|
|
initComponent: function () {
|
|
if (this.format == "Y-m-d") {
|
|
this.format = this.format + ' ' + 'H:i:s';
|
|
}
|
|
this.callParent();
|
|
},
|
|
createPicker: function () {
|
|
var me = this,
|
|
format = Ext.String.format;
|
|
return Ext.create('Ext.ux.DateTimePicker', {
|
|
////pickerField: me,
|
|
ownerCt: me.ownerCt,
|
|
renderTo: document.body,
|
|
floating: true,
|
|
hidden: true,
|
|
focusOnShow: true,
|
|
minDate: me.minValue,
|
|
maxDate: me.maxValue,
|
|
disabledDatesRE: me.disabledDatesRE,
|
|
disabledDatesText: me.disabledDatesText,
|
|
disabledDays: me.disabledDays,
|
|
disabledDaysText: me.disabledDaysText,
|
|
format: me.format,
|
|
showToday: me.showToday,
|
|
startDay: me.startDay,
|
|
minText: format(me.minText, me.formatDate(me.minValue)),
|
|
maxText: format(me.maxText, me.formatDate(me.maxValue)),
|
|
listeners: {
|
|
scope: me,
|
|
select: me.onSelect
|
|
},
|
|
keyNavConfig: {
|
|
esc: function () {
|
|
me.collapse();
|
|
}
|
|
}
|
|
});
|
|
|
|
}
|
|
|
|
/**
|
|
* @private
|
|
*/
|
|
, onExpand: function () {
|
|
var value = this.getValue();
|
|
|
|
//多传一个参数,从而避免时分秒被忽略。
|
|
this.picker.setValue(Ext.isDate(value) ? value : new Date(), true);
|
|
}
|
|
}); |