easyui时间控件只显示年月

/**
 * 日期空间,格式:YYYYMM
 * 
 * @param jObj
 *            jquery对象
 * @param dVal
 *            默认值
 * @returns
 */
function dateboxForMonth(jObj, options) {
    if(!options)
        options={};
    // 下次抄表月份
    jObj.datebox({
        panelHeight : 300,
        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; // 月份

                        jObj.datebox('hidePanel')// 隐藏日期对象
                        .datebox('setValue', year + '' + month); // 设置日期的值
                    });
                }, 0);
        },
        parser : function(s) {// 配置parser,返回选择的日期
            if (!s)
                return new Date();
            var year = s.substr(0, 4);
            var month = s.substr(4, 5);

            return new Date(parseInt(year, 10), parseInt(month, 10) - 1, 1);
        },
        formatter : function(d) {
            if (d.getMonth() == 0) {
                return d.getFullYear() - 1 + "" + 12;
            } else {
                return d.getFullYear()
                        + ""
                        + (d.getMonth() < 10 ? ("0" + d.getMonth()) : d
                                .getMonth());
            }
        }// 配置formatter,只返回年月
    });

    var p = jObj.datebox('panel'), // 日期选择对象
    tds = false, // 日期选择对象中月份
    span = p.find('span.calendar-text'); // 显示月份层的触发控件



    if (options && options.showCurrDate) {
        var dval;
        var d = new Date();
        var year = d.getFullYear();
        var month = d.getMonth() + 1;

        dval = year + "" + (month < 10 ? ("0" + month) : month);

        options.dval=dval;
    }

    if(options.dval){
        options.dval=parseInt(options.dval)+1+"";
    }

    setTimeout(function() {
        jObj.datebox('setValue', options.dval);
    }, 1);
}


----------html js调用方式

<input class="easyui-datebox" name="nrmonth" id="nrmonth" data-options="required:true,editable:false">
dateboxForMonth($("#nrmonth"),{showCurrDate:false});
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值