可直接选择月度和年度的Ext DateField

来源:互联网 发布:人工智能芯片上市公司 编辑:程序博客网 时间:2024/05/16 06:53

用的ext3.2做月报 基本上都是用的DateField format='Y-m' ,但是ext的dateField每次选择月份之后必须点一次日期才肯返回,不胜其烦,于是覆盖了datepicker的setValue和hideMonthPicker,一个是让'Y-m'格式的datefield在点击时直接弹出月度选择,另外一个是用于选择后直接返回,特此记录,以观后效。

 

Ext.apply(Ext.DatePicker.prototype,{
     setValue : function(value){
        this.value = value.clearTime(true);
        this.update(this.value);
        if(this.format.indexOf('d')==-1){
          this.showMonthPicker.defer(10,this);
         }
     },   
     hideMonthPicker : function(disableAnim){
         if(this.monthPicker){
             if(disableAnim === true){
                 this.monthPicker.hide();
             }else{
              if(this.format.indexOf('d')==-1){
               this.setValue(Date.parseDate(this.mpSelYear+(this.mpSelMonth<10?'0':'')+(this.mpSelMonth+1),'Ym'));
               this.fireEvent('select', this, this.value);
              }else{
               this.monthPicker.slideOut('t', {duration:0.2});
              }
             }
         }
     }
 });

原创粉丝点击