easyui的easyui-datebox只显示年份-月份,且月份修改成中文
发布日期:2021-05-06 17:27:53 浏览次数:22 分类:精选文章

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

由于项目是从月到月,不想让用户选择日期,再从日期中取月份.想一步到位.

然后去网上找了现有代码,发现网上的代码在本地还是只显示日期,没有显示月份.也许是大家用的版本不同.于是做了一些调整后,可以达到目的.并且加上了将月份改成中文的代码

var monthsArr=['1月','2月','3月','4月','5月','6月','7月','8月','9月','10月','11月','12月'];function setDateSe(fdID){       var c = $('#'+fdID).datebox('calendar');    //修改月份显示,改成中文月份,如果想要修改星期等日历的其它属性,也是同样的方式    c.calendar({       months: monthsArr   });    $('#'+fdID).datebox({          //显示日趋选择对象后再触发弹出月份层的事件,初始化时没有生成月份层       onShowPanel: function () {             //触发click事件弹出月份层          var span=$("div.calendar-title span");          span.trigger('click');           if (!tds)            //延时触发获取月份对象,因为上面的事件触发和对象生成有时间间隔            setTimeout(function() {                    tds = p.find('div.calendar-menu-month-inner td');                tds.click(function(e) {                      //禁止冒泡执行easyui给月份绑定的事件                   e.stopPropagation();                    //得到年份                   var year = /\d{   4}/.exec(span.html())[0] ,                   //月份                   //之前是这样的month = parseInt($(this).attr('abbr'), 10) + 1;                    month = parseInt($(this).attr('abbr'), 10);                    month = month < 10 ? ('0' + month) : (month + '');                 //点击完后,隐藏替换的日期,并赋值                                  $('#'+fdID).datebox('hidePanel').datebox('setValue', year + '-' + month);                         });                    }, 0);            },            //配置parser,返回选择的日期            parser: function (s) {                   if (!s) return new Date();                var arr = s.split('-');                return new Date(parseInt(arr[0], 10), parseInt(arr[1], 10) - 1, 1);            },            //配置formatter,只返回年月 之前是这样的d.getFullYear() + '-' +(d.getMonth());             formatter: function (d) {                    var currentMonth = (d.getMonth()+1);                var currentMonthStr = currentMonth < 10 ? ('0' + currentMonth) : (currentMonth + '');                return d.getFullYear() + '-' + currentMonthStr;             }        });        //日期选择对象        var p = $('#'+fdID).datebox('panel'),         //日期选择对象中月份        tds = false,         //显示月份层的触发控件        span = p.find('span.calendar-text');         var curr_time = new Date();        //设置前当月       // $("#"+fdID).datebox("setValue", curr_time);}//隐藏日期按钮var buttons = $.extend([], $.fn.datebox.buttons);buttons.splice(1, 0, {   });
上一篇:echarts统计图保存成图片,兼容IE
下一篇:FileSaver.js下载文件简单demo

发表评论

最新留言

表示我来过!
[***.240.166.169]2025年03月28日 00时24分58秒