2

我想通过替换来自系统日期的日期选择器的默认日期来在 Extjs 日期选择器中设置不同的日期。为此我覆盖了日期字段-下面是我的代码-

Ext.override(Ext.form.field.Date, {
               expand: function() {
               var value = this.getValue();
               var customDate = '07/08/2013';
               var myDate = new Date(customDate );
               this.getPicker().setValue(Ext.isDate(value) ? value : myDate);
          }
});

现在我期待 myDate 作为选择器中的默认值。但是当我单击选择器选择日期时,选择器没有填充。

谢谢

4

1 回答 1

1

我自己解决了这个问题。这是执行此操作的代码。希望它会帮助某人并节省宝贵的时间。

Ext.override(Ext.form.field.Date, {
  expand: function() {
         var myDate = new Date('07/08/2017');
         var value = this.getValue();
         this.getPicker().setValue(Ext.isDate(value) ? value : myDate);
         var me = this,  bodyEl, picker, collapseIf;
         if (me.rendered && !me.isExpanded && !me.isDestroyed) {
                  bodyEl = me.bodyEl;
                  picker = me.getPicker();
                  collapseIf = me.collapseIf;
                  me.isExpanded = true;
                  me.alignPicker();
                  bodyEl.addCls(me.openCls);
                  me.mon(Ext.getDoc(), {
                  mousewheel: collapseIf,
                  mousedown: collapseIf,
                  scope: me
        }); Ext.EventManager.onWindowResize(me.alignPicker, me);
               me.fireEvent('expand', me);
     }
  }
});
于 2013-07-09T06:48:03.530 回答