【问题标题】:Second Bootstrap Datepicker wont get options (beforeShowDay)第二个 Bootstrap Datepicker 不会获得选项(在ShowDay 之前)
【发布时间】:2015-08-28 03:57:54
【问题描述】:

我正在使用两个 Bootstrap 日期选择器。所需的功能是两个日历都显示两个选定的日期/日期。问题是,如果我在代码中初始化它们 - 只有第一个/上层(在 js 中)datepicker init 是成功的。如果我更改代码的顺序 - start-datepicker 在 end-datepicker 之后初始化,那么只有 end-datepicker 获得 beforeShowDay 的函数。只有第一个运行选项。

我很困惑,想知道是不是 datepicker 库中的一些错误。

仅供参考 - 我已经检查了所有可能破坏代码的内容 - 在调试时 - 它还初始化了第二个 datepicer - 只是忽略了这些选项。此外,日期选择器功能齐全,只是完全忽略了选项。

<div id="start-datepicker" class="input-group date ">
    <input class="form-control" placeholder="mm/dd/yy"
            data-date-autoclose="true" data-date-format="mm/dd/yyyy"
             maxlength="10" type="text" name="arrive" id="arrive"
            value="<? echo $_SESSION[arrive] ?>"/>
    <span class="input-group-addon">
            <i class="fa fa-calendar"></i>
    </span>
</div>

<div id="end-datepicker" class="input-group date ">
    <input class="form-control" placeholder="mm/dd/yy"
            data-date-autoclose="true" data-date-format="mm/dd/yyyy"
            maxlength="10" type="text" name="depart" id="depart"
            value="<? echo $_SESSION[depart] ?>"/>
    <span class="input-group-addon add-on">
            <i class="fa fa-calendar"></i>
    </span>
</div>

还有JQ部分

    var today = new Date();

    $("#start-datepicker").datepicker({
        beforeShowDay: function (date)
        {
            if (date.toLocaleDateString() == today.toLocaleDateString()) {
                return {
                    classes: "fs-bold-day"
                };
            }
            var end = $('#end-datepicker').datepicker('getDate');
            if (date.toDateString() == end.toDateString()) {
                return {
                    classes: "fs-red-day", tooltip: "Departure"
                };
            }
        },
        todayHighlight: true
    });

    $("#end-datepicker").datepicker({
        beforeShowDay: function (date)
        {
            if (date.toLocaleDateString() == today.toLocaleDateString()) {
                return {
                    classes: "fs-bold-day"
                };
            }
            var start = $('#start-datepicker').datepicker('getDate');
            if (date.toDateString() == start.toDateString()) {
                return {
                    classes: "fs-red-day", tooltip: "Arrival"
                };
            }
        },
        todayHighlight: true
    });

提前致谢

【问题讨论】:

    标签: twitter-bootstrap datepicker options


    【解决方案1】:

    https://github.com/eternicode/bootstrap-datepicker/issues/362

    所以您遇到的问题是日期选择器实例的选项并非都是可更新的。有一个专门针对此请求的问题:

    https://github.com/eternicode/bootstrap-datepicker/issues/747

    但第一个链接有更好的信息。这不是一个完美的答案,甚至不是一个很好的答案,但希望这些链接对其他人有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-11-23
      • 2019-05-03
      • 1970-01-01
      • 1970-01-01
      • 2016-10-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多