1

我使用 bootstrap-timepicker:https ://eonasdan.github.io/bootstrap-datetimepicker/#min-view-mode并使用“Min View Mode”,因为我只想得到一年和一个月。没有“天”。在他们的例子中,它工作正常。但是当我使用它时,首先选择一年,然后选择一个月,然后它就可以工作了。但是,当您更改此 val 时,它会显示一个日期选择器。

它必须显示年份或月份,但不能显示日期。

代码笔在这里: http ://codepen.io/r2get/pen/bwaZog

<div class="col-xs-12 product-prijs-cont">
    <div class="row">
        <div class="col-md-6">
            <h1 class="custom-h1" style="border:0;"><i class="fa fa-sliders supp-color-price-page"></i>&nbsp;Filter jaar</h1>
        </div>
        <div class="col-md-6 padding-bottom-year-filter">
            <div class="input-group date" id="datetimepicker" style="margin-top:-3px;">
                <input type="text" id="yearSelector" class="form-control input-group-addon" />
                <span class="input-group-addon">
                    <span class="glyphicon glyphicon-calendar"></span>
                </span>
            </div>
        </div>
    </div>
</div>

在第一次输入时,它首先选择年份,然后选择月份,并显示年份和月份。但是在第二次尝试(更改)时,它必须显示年份或月份,但它显示日期

4

1 回答 1

0

根据bootstrap-datetimepicker.js源代码,一旦弹出窗口关闭,当前视图模式就会被重置(不知道为什么,它可能会更好地联系这个库的贡献者):

currentViewMode = 0; 

这就是下次days显示默认视图 ( ) 的原因。

解决方法

一种选择是在显示弹出窗口后强制显示years视图:

$("#datetimepicker").on("dp.show", function (e) {
       $('.datepicker-days').hide();
       $('.datepicker-years').show();
  });

演示

更新了代码笔

于 2016-11-18T18:44:15.113 回答