我正在使用jquery ui datepicker。
我在页面上有两个datepicker,from和to datepickers
当我在一个日期选择器中选择日期时,我将最大和最小日期更新为第二个日期选择器。
我的问题是,在关闭(隐藏)选择的日期选择器之前, 它显示第二个日期选择器而不是第一个(当我更新第二个日期选择器的最小日期时),然后关闭它。
为什么当我从另一个datepicker更新最小日期时它会显示第二个日期选择器?
如何在更新第二个datepicker之前隐藏datepicker?
<!doctype html>
<html >
<head>
<link rel="stylesheet" href="//code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css">
<script src="//code.jquery.com/jquery-1.9.1.js"></script>
<script src="//code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
</head>
<body>
<input name="fromDateCalendar" type="text" value="10/12/2013" id="fromDateCalendar" style="width:100px;" />
<input name="toDateCalendar" type="text" value="09/01/2014" id="toDateCalendar" style="width:100px;" />
<script>
$(function () {
$('#fromDateCalendar').datepicker({
onSelect: function (date) {change1(date);}});
$("#toDateCalendar").datepicker({
onSelect: function (date) {change2(date);}, maxDate: '0' });
});
function change1(date) {
$('#toDateCalendar').datepicker('option', 'minDate', date);}
function change2(date) {
$('#fromDateCalendar').datepicker('option', 'maxDate', date);}
</script>
</body>
</html>
答案 0 :(得分:0)
当我改变最大日期时解决显示#2日期选择器的问题(代替#1 datepicker), 在使用setTimeout
关闭#1 datepicker后调用.... datepicker('option','minDate',start) onSelect: function (date) {
setTimeout(function () {
....datepicker('option', 'minDate', start)
}, 300)
}....