网维联盟

当前位置:   网站首页 >> 工作随笔

ExtJS4 只显示年月的Field

Ext.define('Ext.form.field.Month', {
   extend:'Ext.form.field.Date',
   alias: 'widget.monthfield',
   requires: ['Ext.picker.Month'],
   alternateClassName: ['Ext.form.MonthField', 'Ext.form.Month'],
   selectMonth: null,
   createPicker: function() {
       var me = this,
           format = Ext.String.format;
       return Ext.create('Ext.picker.Month', {
           pickerField: me,
           ownerCt: me.ownerCt,
           renderTo: document.body,
           floating: true,
           hidden: true,
           focusOnShow: true,
           minDate: me.minValue,
           maxDate: me.maxValue,
           minHeight: 235,
           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: { 
       select:        { scope: me,   fn: me.onSelect     }, 
       monthdblclick: { scope: me,   fn: me.onOKClick     },    
       yeardblclick:  { scope: me,   fn: me.onOKClick     },
       OkClick:       { scope: me,   fn: me.onOKClick     },    
       CancelClick:   { scope: me,   fn: me.onCancelClick }        
           },
           keyNavConfig: {
               esc: function() {
                   me.collapse();
               }
           }
       });
   },
   onCancelClick: function() {
       var me = this;    
   me.selectMonth = null;
       me.collapse();
   },
   onOKClick: function() {
       var me = this;    
   if( me.selectMonth ) {
              me.setValue(me.selectMonth);
           me.fireEvent('select', me, me.selectMonth);
   }
       me.collapse();
   },
   onSelect: function(m, d) {
       var me = this;    
   me.selectMonth = new Date(( d[0]+1 ) +'/1/'+d[1]);
   }
}); 
/** Months picker **/

使用方法:

me.sMonth = Ext.create('Ext.form.field.Month', {
            fieldLabel: '所属月',
            labelWidth: 60,
            width: 180,
            editable: false,
            format: 'Y年m月',
            value: new Date()
        });


亲!有什么想法呢?
  • 流泪

    0

  • 打酱油

    0

  • 开心

    0

  • 鼓掌

    0

  • 恐怖

    0