我正在开发一个具有多种实现的相当大的软件平台。有一个先前的实现使用jQueryUI datepicker,我现在正在使用Bootstrap datepicker的接口改进。
我有没有办法测试Bootstrap日期选择器是否已经附加到某个元素,让我们说这个
<input type="text" id="user-date" class="datepicker"/>
请注意,我没有询问是否在this qestion中加载了Bootstrap datepicker。我宁愿要求测试,类似于jQueryUI datepicker的this one。
答案 0 :(得分:13)
当你在一个元素上使用bootstrap-datepicker时,它会在.data中添加一个对象(&#34; datepicker&#34;),这样你就可以检查它是否存在,并检查日期选择器是否可见,你可以使用。数据(&#34; datepicker&#34;)。像这样的选择器对象
HTML
<input type="text" id="user-date" class="datepicker"/>
JS
if(!$('#user-date').data('datepicker')){// or $('#user-date').data('datepicker')==null
console.log('datepicker is not attached');
}
$('#user-date').datepicker();
$('#user-date').focus();//set focus to display datepicker
if($('#user-date').data('datepicker')){
console.log('datepicker is already attached');
if($('#user-date').data('datepicker').picker.is(":visible")){
console.log("datepicker is visible");
}
}