博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Ext DateField控件 - 只选择年月
阅读量:4359 次
发布时间:2019-06-07

本文共 2792 字,大约阅读时间需要 9 分钟。

 效果

HTML代码:

MonthPicker

 

JavaScript代码:

//MonthPickerPlugin.js文件,年月选择的关键代码   Ext.ux.MonthPickerPlugin = function() {       var picker;       var oldDateDefaults;         this.init = function(pk) {           picker = pk;           picker.onTriggerClick = picker.onTriggerClick.createSequence(onClick);           picker.getValue = picker.getValue.createInterceptor(setDefaultMonthDay).createSequence(restoreDefaultMonthDay);           picker.beforeBlur = picker.beforeBlur.createInterceptor(setDefaultMonthDay).createSequence(restoreDefaultMonthDay);       };         function setDefaultMonthDay() {           oldDateDefaults = Date.defaults.d;           Date.defaults.d = 1;           return true;       }         function restoreDefaultMonthDay(ret) {           Date.defaults.d = oldDateDefaults;           return ret;       }         function onClick(e, el, opt) {           var p = picker.menu.picker;           p.activeDate = p.activeDate.getFirstDateOfMonth();           if (p.value) {               p.value = p.value.getFirstDateOfMonth();           }             p.showMonthPicker();                      if (!p.disabled) {               p.monthPicker.stopFx();               p.monthPicker.show();      // if you want to click,you can the dblclick event change click               p.mun(p.monthPicker, 'click', p.onMonthClick, p);               p.mun(p.monthPicker, 'click', p.onMonthDblClick, p);               p.onMonthClick = p.onMonthClick.createSequence(pickerClick);               p.onMonthDblClick = p.onMonthDblClick.createSequence(pickerDblclick);               p.mon(p.monthPicker, 'click', p.onMonthClick, p);               p.mon(p.monthPicker, 'click', p.onMonthDblClick, p);           }       }         function pickerClick(e, t) {           var el = new Ext.Element(t);           if (el.is('button.x-date-mp-cancel')) {               picker.menu.hide();           } else if(el.is('button.x-date-mp-ok')) {               var p = picker.menu.picker;               p.setValue(p.activeDate);               p.fireEvent('select', p, p.value);           }       }         function pickerDblclick(e, t) {           var el = new Ext.Element(t);           if (el.parent()               && (el.parent().is('td.x-date-mp-month')               || el.parent().is('td.x-date-mp-year'))) {                 var p = picker.menu.picker;               p.setValue(p.activeDate);               p.fireEvent('select', p, p.value);           }       }   };     Ext.preg('monthPickerPlugin', Ext.ux.MonthPickerPlugin);

 

转载于:https://www.cnblogs.com/suixufeng/archive/2012/01/11/3336107.html

你可能感兴趣的文章
基于visual Studio2013解决C语言竞赛题之0707月份输出
查看>>
【leetcode】Triangle
查看>>
PostgreSQL9.1 with PostGIS 2.1.4 for mapping coordinates on linux/ubuntu 已经打包成deb 可下载...
查看>>
[LeetCode] Max Consecutive Ones
查看>>
redis缓存本地安装教程
查看>>
ALTER AVAILABILITY GROUP (Transact-SQL)
查看>>
探究X Window System运行原理与启动过程
查看>>
Arch 安装 gnome桌面
查看>>
SpringCloud学习笔记(9)----Spring Cloud Netflix之声明式 REST客户端 -Feign的使用
查看>>
Python的平凡之路(17)
查看>>
Git for Windows之使用SSH协议开通公钥免密登陆功能
查看>>
Identity Server4学习系列一
查看>>
计算机硬件-基础
查看>>
完成登录功能,用session记住用户名
查看>>
C++ code:剩余串排列
查看>>
网页播放器插件
查看>>
Python第三方库jieba(中文分词)入门与进阶(官方文档)
查看>>
【转】eclipse for java ee的tomcat配置(常见问题解决)
查看>>
QQMacMgr for Mac(腾讯电脑管家)安装
查看>>
特效:ListBox数据加载特效
查看>>