extjs日期输入控件

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xyzhanhh/article/details/42419991
/**
 * 带时间的日期输入控件
 */
Ext.define('js文件的地址', {
    extend:'Ext.form.field.Date',
    alias: 'js文件的地址别名',
    requires: ['ketech.view.ux.picker.DateTime'],

    /**
     * @cfg {String} format
     * The default date format string which can be overriden for localization support. The format must be valid
     * according to {@link Ext.Date#parse}.
     */
    format : "Y-m-d H:i:s",
 
    /**
     * @cfg {String} altFormats
     * Multiple date formats separated by "|" to try when parsing a user input value and it does not match the defined
     * format.
     */
    altFormats : "Y-m-d H:i:s",

    createPicker: function() {
        var me = this,
        format = Ext.String.format;
        //修改picker为自定义picker
        return new ketech.view.ux.picker.DateTime({
            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);
    }

});

然后在其他js文件中引入就可以了

items : [        
                Ext.create(''js文件的地址', {
                    name : 'beginTime',
                    fieldLabel : '开始时间/结束时间',
                    format : 'Y-m-d H:i:s',
                    labelAlign : 'right',
                    labelWidth : 90,
                    listeners : {
                        select : function(){
                            this.pickerBeginTime = this.getValue();
                            this.up("panel").down("datetimefield[name=endTime]").setMinValue(this.pickerBeginTime);
                        }
                    }
                }),


猜你喜欢

转载自blog.csdn.net/xyzhanhh/article/details/42419991