我有很多页面包含多个DatePickers,基本上显示了一些日期范围(DateTo和DateFrom文本框),并且一旦首次打开DatePicker并选择了日期,它们就能正常工作。
但是当再次单击日期来更改下一个时间日期时(此单击也可以在单击页面上的其他位置后),它不起作用。再次第三次,datepicker开始工作,等等。
有趣的是,对于自定义日期过滤器具有单个DatePicker的页面,它们工作得非常好。
我检查了JQuery UI 1.8.5的代码,发现DatePicker的_selectDay函数也是交替调用的。
我正在使用JQuery 1.4.1版本,并进行了一些小修改以修复JQuery Bug 11390/7986
// jQuery.boxModel DEPRECATED in 1.3, use jQuery.support.boxModel instead
jQuery.boxModel = jQuery.support.boxModel = (document.compatMode === "CSS1Compat");
我删除了此修复程序,发现问题仍然存在,因此似乎没有问题。
我正在使用DatePicker,如下所示:
<ul id="customActivityRange">
<li class=" slvzr-first-child">
<label id="RangeFrom" ></label>
<input id="activityFrom" name="activityFrom" class="datepicker" type="text" onkeydown="javascript:if(event.keyCode==13) setGLDates(2, true);" onchange="javascript:setGLDates(2, false);" />
</li>
<li>
<label id="RangeTo"></label>
<input id="activityTo" name="activityTo" class="datepicker" type="text" onkeydown="javascript:if(event.keyCode==13) setGLDates(2, true);" onchange="javascript:setGLDates(2, false);" />
</li>
<li>
<button id="FilterDateRange" type="button" onclick="javascript:setGLDates(2, true);"></button>
</li>
</ul>
将DatePicker与每个输入文本框关联,如下所示:
$('.datepicker').each(function () {
$(this).datepicker();
});
答案 0 :(得分:1)
尝试使用jQuery Datepicker事件而不是javascript事件
请查看此链接以获取API帮助