如何将单独的类添加到两个单独的动态日期选择器?

时间:2016-06-22 17:32:50

标签: jquery twitter-bootstrap datepicker bootstrap-datepicker

基本上,它是这样的:

我尝试选择#fromDate和#toDate来处理datepicker。这不起作用,尽管它与datepicker作为类声明的元素相同。

我想做的是:

我希望能够为名为' .datepicker-title'的动态生成的datepicker类添加标题。但是,我在过去四个半小时内完成的任何变化只能在控制台中使用。我也尝试过原始文件,但它没有出现。

我也尝试过这种方法:

$('.datepicker').datepicker({
    title: 'From'
})

但是这个方法的作用是,它将标题应用于日期选择器的两个,而不是第一个输入。当我说我已经包含了##; fromDate"时,请不要误会我的意思。和"#toDate"在选择器内,但正如我之前提到的,这种方法不起作用。

我在下面指定了两个单独的输入字段。

    <div class="col-sm-3 pink-inputs">
            <label>From</label>
            <input id="fromDate" class="datepicker hidden-xs" type="text" placeholder="mm/dd/yy" data-bind="value: From" />
            <span class="fa fa-angle-down icon"></span>
        </div>
        <div class="col-sm-3 pink-inputs">
            <label>To</label>
            <input id="toDate" class="datepicker hidden-xs" type="text" placeholder="mm/dd/yy" data-bind="value: To" />
            <span class="fa fa-angle-down icon"></span>
        </div>

我正在使用bootstrap 3.0和bootstrap-datepicker插件。

班级&#39; .pink-inputs&#39;正在为输入设置样式,并且没有附加任何内容。

下面是我目前的jQuery。

     $('.datepicker').datepicker({
            format: "mm/dd/yy",
            maxViewMode: 2,
            todayBtn: "linked",
            orientation: "bottom left",
            autoclose: true,
            startDate: '@ViewBag.MinimumStartDate'
        });

    $('.datepicker').datepicker({
        beforeShowMonth: function(){
            if($('input').attr('id') == 'fromDate'){
                title: 'From'
            }
        }
    });

我查看了其他类似的问题,例如&#39;如何将类添加到特定的日期选择器?&#39;,&#39;如何将特定类添加到动态日期选择器?&#39;。不幸的是,这些解决方案对我没有帮助。我尝试了几种,包括以下变体:

    $('.datepicker').datepicker({}).addClass();
    $('.datepicker').datepicker({}).append();
    $('.datepicker').datepicker({}).addClass().append().appendTo();

我也尝试了各种各样的beforeShowMonth,Day,Year等。

作为旁注:

由datepicker动态生成的代码:

<div style="top: 320.017px; left: 584.517px; display: block;" class="datepicker datepicker-dropdown dropdown-menu datepicker-orient-left datepicker-orient-bottom">
<table>
   <thead>
     <tr>
       <th class="datepicker-title" style="display:none;" colspan="7"></th></tr>
       <tr>...</tr>
   </thead>
</table>
</div>

如果标题未在datepicker中初始化,例如:

$('.datepicker').datepicker({
   title: 'From'
});

它导致(从bootstrap-datepicker.js本身)显示:none;在HTML中生成datepicker时。

enter image description here enter image description here

2 个答案:

答案 0 :(得分:0)

这不适合你吗?

 $(".datepicker-title").each(function(i){
        $(this).addClass("style" + i);
    });

<div style="top: 320.017px; left: 584.517px; display: block;" class="datepicker datepicker-dropdown dropdown-menu datepicker-orient-left datepicker-orient-bottom">
<table>
   <thead>
       <tr class="datepicker-title" style="display:none;" colspan="7"></tr>
       <tr class="datepicker-title" style="display:none;" colspan="7"></tr>
   </thead>
</table>
</div>

答案 1 :(得分:0)

    $('#toDate').datepicker({
        format: "mm/dd/yy",
        maxViewMode: 2,
        todayBtn: "linked",
        orientation: "bottom left",
        autoclose: true,
        startDate: '@ViewBag.MinimumStartDate',
        title: 'To'
    });

    $('#fromDate')
        .datepicker({
            format: "mm/dd/yy",
            maxViewMode: 2,
            todayBtn: "linked",
            orientation: "bottom left",
            autoclose: true,
            startDate: '@ViewBag.MinimumStartDate',
            title: 'From'
        });

我让事情变得复杂了。