2016-10-27 48 views
1

我有点新使用jQuery和我使用Bootstrap DateTimePicker来显示日历,我想检索当前选定的日期,但由于某些原因,.on('click')函数在点击日期时似乎不起作用。jQuery .on('click',function())与引导程序不工作datetimepicker

这是HTML代码如下所示:

<div style="overflow:hidden;"> 
    <div class="form-group"> 
     <div class="row"> 
      <div class="col-md-8"> 
       <div id="datetimepicker"></div> 
      </div> 
     </div> 
    </div> 
</div> 

而我想这样做会是这样的:

$(document).ready(function() { 
    $('#datetimepicker').on('click', '.day', function() { 
     // Get the selected date. 
     var date = $(this).val(); 
    }); 
}); 

单日的自举HTML是像下面:

<td data-action="selectDay" data-day="10/26/2016" class="day active">26</td> 
<td data-action="selectDay" data-day="10/27/2016" class="day today">27</td> 
<td data-action="selectDay" data-day="10/28/2016" class="day">28</td> 

所以基本上我正在寻找的是数据日的内容活动日。

JSFiddle

+0

@Hsate:下面我们的答案是有帮助的请接受的答案; ) – CodeMan

回答

2

我用下面的代码和它的工作多次点击:

$(document).ready(function() { 
    $('#datetimepicker').datetimepicker({ 
     inline: true, 
     format: 'DD/MM/YYYY' 
    }); 

    $('div tbody').on('click', 'tr > .day',function(){ 
     alert($(this).data().day) 
    }) 
}); 

jsfiddle

访问存储在data属性在HTML元素的数据,你可以搜索和阅读更多关于它的jQuery的.data()

+1

这工作完美!谢谢! – HaSte

+0

很高兴我帮助:) –

+0

只是现在Bootstrap并没有更新当前选择的一天显示为蓝色...:/ – HaSte

0

JS:

$(document).ready(function() { 
    $('#datetimepicker').datetimepicker({ 
     inline: true, 
     format: 'DD/MM/YYYY' 
    }); 

    $('div tbody').on('click','td', function(e) { 
    alert($(this).attr('data-day')); 
    }); 
}); 

试试下面拨弄:

https://jsfiddle.net/80kLcj1q/8/

+0

@Hsate:如果答案有帮助,请接受答案:) – CodeMan

+0

这只能工作一次,它只给我一天,而不是年和月。在bootstrap中,这一天标记为“ 26”我想获取数据的内容这就是“10/26/2016”,我希望能够一次又一次地做到这一点,而不仅仅是一次。 – HaSte

+0

此外,如果我点击月份,选择另一个月(或再次选择同一月份),然后点击一天,它似乎无法工作。 – HaSte

相关问题