继承Ext.form.DateField只选择年月
2011-03-23 17:11
387 查看
继承Ext.forum.DateField:
调用:
dateFieldMonthPickerShow = Ext.extend(Ext.form.DateField,{ initComponent : function(){ dateFieldMonthPickerShow.superclass.initComponent.call(this); }, onTriggerClick : function(){ if(this.disabled){ return; } if(this.menu == null){ this.menu = new Ext.menu.DateMenu({ hideOnClick: false, focusOnSelect: false }); } this.onFocus(); Ext.apply(this.menu.picker, { minDate : this.minValue, maxDate : this.maxValue, disabledDatesRE : this.disabledDatesRE, disabledDatesText : this.disabledDatesText, disabledDays : this.disabledDays, disabledDaysText : this.disabledDaysText, format : this.format, showToday : this.showToday, startDay: this.startDay, minText : String.format(this.minText, this.formatDate(this.minValue)), maxText : String.format(this.maxText, this.formatDate(this.maxValue)) }); this.menu.picker.setValue(this.getValue() || new Date()); this.menu.show(this.el, "tl-bl?"); this.menuEvents('on'); this.showMonthPickerMethod(); } , showMonthPickerMethod : function(){ this.menu.picker.showMonthPicker(); this.menu.picker.mon(this.menu.picker.monthPicker, 'click', function(e, t){ e.stopEvent(); var el = new Ext.Element(t), pn; if(el.is('button.x-date-mp-cancel')){ this.menu.picker.hideMonthPicker(); this.menu.hide(); // this.menu.picker.setValue(false); // this.hide(); } else if(el.is('button.x-date-mp-ok')){ var d = new Date(this.menu.picker.mpSelYear, this.menu.picker.mpSelMonth, (this.menu.picker.activeDate || this.menu.picker.value).getDate()); if(d.getMonth() != this.menu.picker.mpSelMonth){ d = new Date(this.menu.picker.mpSelYear, this.menu.picker.mpSelMonth, 1).getLastDateOfMonth(); } this.menu.picker.update(d); this.menu.picker.hideMonthPicker(); this.menu.picker.setValue(d); this.menu.picker.fireEvent('select', this.menu.picker, this.menu.picker.value); } }, this); this.menu.picker.mon(this.menu.picker.monthPicker, 'dblclick', function(e, t){ e.stopEvent(); var el = new Ext.Element(t), pn; if((pn = el.up('td.x-date-mp-month', 2))){ var d = new Date(this.menu.picker.mpSelYear, pn.dom.xmonth, (this.menu.picker.activeDate || this.menu.picker.value).getDate()); this.menu.picker.update(d); this.menu.picker.hideMonthPicker(); this.menu.picker.setValue(d); this.menu.picker.fireEvent('select', this.menu.picker, this.menu.picker.value); } else if((pn = el.up('td.x-date-mp-year', 2))){ var d = new Date(pn.dom.xyear, this.menu.picker.mpSelMonth, (this.menu.picker.activeDate || this.menu.picker.value).getDate()); this.menu.picker.update(d); this.menu.picker.hideMonthPicker(); this.menu.picker.setValue(d); this.menu.picker.fireEvent('select', this.menu.picker, this.menu.picker.value); } }, this); } });
调用:
new dateFieldMonthPickerShow({ format: 'Y-m' .... });
相关文章推荐
- 修改Ext.form.DateField只选择年月
- [导入]修改Ext.form.DateField只选择年月
- 修改Ext.DatePicker使得Ext.form.DateField只选择年月
- 修改Ext.form.DateField只选择年月
- Ext_日期选择框_Ext.form.DateField(转)
- 继承Ext.form.TriggerField,实现树下拉选择(新增示例下载)
- [导入]继承Ext.form.TriggerField,实现树下拉选择(新增示例下载)
- ExtJs内的Ext.form.Panel中datefield控件选择日期过后的事件监听select以及比较两个时间的大小
- Ext_日期选择框_Ext.form.DateField
- 解决 Ext.form.DateField 在 chrome 等浏览器下显示异常
- Ext.form.DateField简单用法及日期范围控制
- Ext.form.DateField
- Ext.widgets-form(下)ComboBox,TimeField,DateField,TriggerField,TextArea,NumberField
- 扩展Ext.form.DateField实现定义日期面板默认展示日期
- Ext.form.DateField简单用法及日期范围控制
- Ext.form.DateField简单用法及日期范围控制
- Ext3.0选择时间只显示年月选项的方法
- 如果使用Ext.form.ComboBox 作为editor,并设置了store,在选择后,在表格单元中显示的是store中的displayfield 而不是valuefield
- 扩展Ext.form.DateField实现定义日期面板默认展示日期
- Ext.form.field.Time时间选择框