$('#altdate').datetimepicker({
timeFormat: 'hh:mm:ss',
dateFormat: 'yy-mm-dd',
altField: "#Event_datetime",
altFormat: "yy-mm-dd",
altTimeFormat: 'hh:mm:ss',
altFieldTimeOnly: false,
onClose: function( selectedDate ) {
//alert(selectedDate);
$( "#altenddate" ).datetimepicker( "option", "minDate", selectedDate );
if (selectedDate < ($.datepicker.formatDate('yy-mm-dd', new Date())) ) {
start_in_past = true;
}
}
});
$('#altenddate').datetimepicker({
timeFormat: 'hh:mm:ss',
dateFormat: 'yy-mm-dd',
altField: "#Event_enddatetime",
altFormat: "yy-mm-dd",
altTimeFormat: 'hh:mm:ss',
altFieldTimeOnly: false,
onClose: function( selectedDate ) {
//alert(selectedDate);
$( "#altdate" ).datetimepicker( "option", "maxDate", selectedDate );
}
});
当我离开datetimepicker字段时,#Event_datetime字段正确填充值“2012-12-23 13:00:00”;但是,当我关闭enddate时,行
$( "#altdate" ).datetimepicker( "option", "maxDate", selectedDate );
仅在场上设置“2012-12-23”!使用“maxDateTime”作为选项也不起作用,获取maxDateTime.getFullYear is not a function
。
如何使用客户端请求的完整字符串设置maxDate(Time): yy-mm-dd hh:mm:ss
答案 0 :(得分:3)
所以问题实际上是设置“maxDate”选项,实际的隐藏字段#Event_datetime会在没有时间的情况下重置 - 不知道为什么。
所以我通过暂时保存#Event_datetime变量来解决它,然后再调用set maxDate并重新设置它......
var current = $('#Event_datetime').val();
$( "#altdate" ).datetimepicker( "option", "maxDate", selectedDate );
$('#Event_datetime').val(current);
答案 1 :(得分:1)
我遇到了和你一样的问题,只是没有使用alt字段。你的解决方案也适用于我,不过我必须稍微改编码。
var current = $("#startDate").datetimepicker("getDate");
$("#startDate").datetimepicker( "option", "maxDate", selectedDate );
$("#startDate").datetimepicker( "setDate", current);
(我知道我可以将其作为评论发布,但我需要格式化代码示例。)