如下图,翻页不选择也不关闭。点击指定年份时再选择和关闭控件

 

代码如下

// 默认没有选择,把判断赋值当前时间
var iYearCode = parseInt(new Date().getFullYear().toString());
// 如果上一次选择了,但手动删除或修改了,再把判断赋值当前时间
$("#yearCode").bind("input propertychange",function(event){
    var yearCode = $("#yearCode").val();
    if(undefined == yearCode || null == yearCode || yearCode.length < 4) {
        iYearCode = parseInt(new Date().getFullYear().toString());
    } else {
        iYearCode = parseInt(yearCode);
    }
});
layui.laydate.render({
    elem: '#yearCode' 
    ,type:'year'
    ,showBottom: false
    ,change: function(value, date, endDate){
        // 获取翻页或点击选择年份数据
        var iValue = parseInt(value);
        // 获取一页年份列表个数,翻页的话,两个年份肯定等于列表年份个数长度
        var year_list = $(".laydate-year-list")[0].getElementsByTagName("li").length;
        
        // 如果上一次选择和这次选择之间不超过年份列表个数,那么就是点击选择指定年份
        if(Math.abs(iYearCode - iValue) < year_list) {
            $('#yearCode').val(value);
            $('.layui-laydate').remove();
        }
        // 赋值给判断
        iYearCode = iValue;
    }
});