当你发起输入时立即行动
DEMO:http://jsfiddle.net/rbla/2go9cwca/
但是,当我将此代码放在“更新”并预填充数据库中的2个输入的页面上时,灰显日期(超过最大值和最小值)不起作用...
<input id="datepicker1">
<input id="datepicker2">
<script>
$(function() {
$( "#datepicker1" ).datepicker({
defaultDate: "+1w",
changeMonth: true,
changeYear: true,
dateFormat: "dd-M-yy",
onClose: function( selectedDate ) {
$( "#datepicker2" ).datepicker( "option", "minDate", selectedDate );
}
});
$( "#datepicker2" ).datepicker({
defaultDate: "+1w",
changeMonth: true,
changeYear: true,
dateFormat: "dd-M-yy",
onClose: function( selectedDate ) {
$( "#datepicker1" ).datepicker( "option", "maxDate", selectedDate );
}
});
});
</script>
我希望在2个字段填充数据库中的信息之后看到灰色的日期,但是没有发生
任何想法??
答案 0 :(得分:1)
你去了,问题是你的onClose。它与加载默认日期无关。问题是当您打开日期选择器并关闭它而不选择日期时,selectedDate什么都不是。由于您将minDate / maxDate设置为nothing,因此会删除属性minDate / maxDate。你可以试试你的jsFiddle。打开第一个日期选择器,选择一个日期,打开你的第二个日期选择器,关闭它而不选择任何东西,你会看到min和max设置为空。
要解决此问题,您需要在更新日期选择器之前检查selectedDate的值。
if (selectedDate != "")
您的小提琴已更新:jsFiddle