【问题标题】:Restrict Years On Month/DatePicker限制月份/日期选择器的年份
【发布时间】:2015-10-05 09:09:44
【问题描述】:

请看我的fiddle

我所追求的是如果年份与当前年份匹配,则禁用“上一个”按钮,但我还想将“下一个”按钮限制为仅在下一年启用,如果他们单击它,然后它会被禁用。

我尝试过使用minDate: "0"maxDate: "1y",但它们不起作用。

HTML

<div class="input-group date" style="width: 200px">
    <input type="text" id="example1" class="form-control" style="cursor: pointer"/>
        <span class="input-group-addon">
            <i class="glyphicon glyphicon-calendar"></i>
        </span>
</div>

JQuery

$('#example1').datepicker
({
    format: "MM yyyy",
    minViewMode: 1,
    changeYear: true,
    autoclose: true
});

CSS

.datepicker-switch
{
    pointer-events: none;
}

我不想在我的代码中添加年份,否则我将不得不每年更新它并发布我的网站,那么如何在不添加的情况下做到这一点。

【问题讨论】:

    标签: javascript jquery jquery-ui-datepicker bootstrap-datepicker


    【解决方案1】:

    此解决方案基于 J Santosh 的解决方案,但修复了 OP 的要求

    要限制日期选择器,请使用 startDateendDate。将计算的日期对象传递给选项以方便使用(明年无需更新)

    请求:startDate = this yearendDate = this + next year

    日期选择器配置:

    $('#example1').datepicker({
        format: "MM yyyy",
        minViewMode: 1,
        autoclose: true,
        startDate: new Date(new Date().getFullYear(), '0', '01'),
        endDate: new Date(new Date().getFullYear()+1, '11', '31'),
    });
    

    查看演示:http://jsfiddle.net/RWY2X/28/

    PS:changeYear 不是现有选项

    【讨论】:

    • 我以为我已经删除了 changeYear 哈哈,但你的解决方案非常感谢。
    【解决方案2】:

    这是你想要的吗?禁用除当前年份以外的所有其他年份

    如果是,则使用 startDateendDate 选项

    Demo

    【讨论】:

    • @J Santosh 显示picker时不显示下一年按钮
    • 如果单击下一个按钮,您要禁用什么,例如,如果当前年份是 2015 年,那么下一个按钮将导致 2016 年,您要禁用 2016 年还是 2017 年?
    • @J Santosh 显示日历时,如果年份不等于当前年份(例如 2015 年),则应显示“下一步”按钮。如果用户随后单击“下一年”按钮,他们应该无法再次单击它
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-04
    • 2020-02-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多