EasyUI Calendar 日历插件,只显示年月。

Posted Ann丶

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了EasyUI Calendar 日历插件,只显示年月。相关的知识,希望对你有一定的参考价值。

从别人的博客园搬过来的,放在这里只是为了方便自己用。已经注明原文出处,尊重别人的劳动成果。

原文地址:http://www.cnblogs.com/hmYao/p/5779463.html

此日历插件依赖于easyui的js和css。

html:

<input id="db"  />

js:

初始化加载db标签

$(\'#db\').datebox({
    onShowPanel: function() { //显示日趋选择对象后再触发弹出月份层的事件,初始化时没有生成月份层
        span.trigger(\'click\'); //触发click事件弹出月份层
        if(!tds) setTimeout(function() { //延时触发获取月份对象,因为上面的事件触发和对象生成有时间间隔
            tds = p.find(\'div.calendar-menu-month-inner td\');
            tds.click(function(e) {
                e.stopPropagation(); //禁止冒泡执行easyui给月份绑定的事件
                var year = /\\d{4}/.exec(span.html())[0] //得到年份
                    ,
                    month = parseInt($(this).attr(\'abbr\'), 10); //月份,这里不需要+1
                $(\'#db\').datebox(\'hidePanel\') //隐藏日期对象
                    .datebox(\'setValue\', year + \'-\' + month); //设置日期的值
            });
        }, 0);
        yearIpt.unbind(); //解绑年份输入框中任何事件
    },
    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: function(d) {
        return d.getFullYear() + \'-\' + (d.getMonth() + 1);
    }
});
var p = $(\'#db\').datebox(\'panel\'), //日期选择对象
    tds = false, //日期选择对象中月份
    yearIpt = p.find(\'input.calendar-menu-year\'), //年份输入框
    span = p.find(\'span.calendar-text\'); //显示月份层的触发控件

 

原文地址:http://www.cnblogs.com/hmYao/p/5779463.html

以上是关于EasyUI Calendar 日历插件,只显示年月。的主要内容,如果未能解决你的问题,请参考以下文章

Jquery日历插件e-calendar升级版

基于jquery的带事件显示功能的日历板插件calendar.js

vue-移动端日历插件

EasyUI日历控件

mobiscroll日历插件怎么样才能让input里只显示年

Zabuto Calendar 日历插件使用指南