easyUI日期控件只選擇月份和日期


最近的工作中,有塊業務要求只選擇月份和日期,翻遍了easyUIAPI和網絡資料也沒找到方法,網上幾乎都是只要年份或者年月,沒有我需要的場景。遂自己琢磨了下,最終成功只選擇月份和日期,過濾掉了年份。

我想要的是這樣的

 

我修改后的效果是這樣的

現分享代碼如下

 

 1 $("#"+param).datebox({
 2     showSeconds: false,
 3     required:true,
 4     onShowPanel: function () {// 隱藏年的選擇
 5         $(".calendar-prevyear").hide();
 6         $(".calendar-nextyear").hide();
 7         $(".calendar-menu-year-inner").hide();
 8     },
 9     formatter: function(date){
10         if(date){
11             var m = date.getMonth()+1;
12             var d = date.getDate();
13             m = m<10?('0'+m):m;
14             d = d<10?('0'+d):d;
15             return m+'-'+d;
16         }
17     },
18     parser: function (date) {
19         if (!date) return new Date();
20        var array = date.split(" ");// 分成日期和時間兩部分
21        var arrayDate = array[0].split("-");
22        var monthStr = arrayDate[0];
23        var dayStr = arrayDate[1];
24         var month = parseInt(monthStr,10);// 月份
25         var day = parseInt(dayStr,10);//
26         if (month && day){
27           return new Date(null,month-1,day,null,null,null);
28         } else {
29           return new Date();
30         }
31     }
32 });  
1 var p = $("#"+param).datebox('panel'); //日期選擇對象
2 p.find('span.calendar-text').on('DOMSubtreeModified',function(e){
3     var text = $(e.target).html();
4     var onlyMonth = text.split(' ');
5     if(onlyMonth.length > 1){
6         $(".calendar-text").html(onlyMonth[0]);// 不顯示年份 
7     }
8 });

其實解決思路就是隱藏面板中年的切換icon和年的點擊面板,然后在選中日期后把年份切割掉就好了。如果要選擇時分,把代碼中的datebox改成datetimebox即可。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM