我有以下函数来设置minDate的默认值:
$(function() {
$( "#arrival_date" ).datepicker();
$( "#arrival_date" ).datepicker('option','minDate','<?php echo $minDate ?>');
});
但是在页面加载之后,$ minDate变量有时会根据我某些函数中最早的日期而改变。
示例如果$ minDate的值是“7/29/2012”,并且在页面完全加载后,有时$ mindDate日期会更改为早于“7/29/2012”。假设它将更改为“7/20/2012”。
如果发生这种情况,我想将DatePicker的minDate值更改为新日期(即“7/20/2012”而不是“7/29/2012”)。
如何调用此功能?
UPDATE * 示例代码:
<?php
$checkin = "7/29/2012";
$minDate = $checkin;
?>
<head>
$(function() {
$( "#arrival_date" ).datepicker();
$( "#arrival_date" ).datepicker('option','minDate','<?php echo $minDate ?>');
});
</head>
<body>
<?php
for($i=0;$i<$max;$i++){
$r_id=$_SESSION['cart'][$i]['room_id'];
if (!isset($room_id)){
$room_id=$r_id;
}else{
$room_id=$room_id . "," . $r_id;
}
$checkin=$_SESSION['cart'][$i]['checkin'];
$checkout=$_SESSION['cart'][$i]['checkout'];
$nights=$_SESSION['cart'][$i]['nights'];
$q=$_SESSION['cart'][$i]['qty'];
$pname=get_room_type($r_id);
if ($checkin < $minDate) $minDate = $checkin; //<--- here...how can I change the minDate of datepicker to the new value?
}
?>
</body>
</html>
答案 0 :(得分:4)
在你的情况下,你可以这样做。
$(function() {
$( "#arrival_date" ).datepicker();
$( "#arrival_date" ).datepicker({ minDate: new Date(<?php echo $checkin ?>) });
});
$( "#arrival_date" ).datepicker( "option", "minDate", selectedDate );
请参阅此链接。这可能对你有帮助。 http://jqueryui.com/demos/datepicker/#date-range
我希望这就是你想要的。
答案 1 :(得分:2)
这是从早期的stackoverflow帖子中获取的,但它可以帮助您解决问题
jQuery datepicker minDate variable
$("#checkinDate").change(function() {
test = $(this).datepicker('getDate');
testm = new Date(test.getTime());
testm.setDate(testm.getDate() + 1);
$("#arrival_date").datepicker("option", "minDate", testm);
});
答案 2 :(得分:0)
我不知道签到的时间或方式如何变化,但也许类似......
$checkin.change(function () {
newDate = $(this).val();
$( ".selector" ).datepicker({
minDate: new Date(newDate)
});
});