我已经在我的网页上放了两个datepikcer来生成日期和日期以生成报告。我想在两个datepicker上应用验证来选择日期。我已经编写了常见的jquery代码,用于设置datepikcer的最小和最大日期,但它对我不起作用。我还在datepicker关闭时编写了设置最小和最大日期的代码。
我的要求是我想在初始化datepicker时动态设置最小和最大日期。然后在设置另一个最大和最小日期后,用户可以从任何日期选择器中选择日期
$("#frm_date").datepicker({
showOn: 'button',
buttonImage: 'images/calendar.gif',
buttonImageOnly: true,
dateFormat:'yy-mm-dd',
onClose: function( selectedDate ) {
$( "#to_date" ).datepicker( "option", "minDate", selectedDate );
}
});
$("#to_date").datepicker({
showOn: 'button',
buttonImage: 'images/calendar.gif',
buttonImageOnly: true,
dateFormat:'yy-mm-dd',
onClose: function( selectedDate ) {
$("#frm_date" ).datepicker( "option", "maxDate", selectedDate );
}
});
$(".datepick").datepicker({dateFormat:'yy-mm-dd',minDate:'2013-09-10' ,maxDate:'2013-10-10'});
答案 0 :(得分:3)
我使用下面的代码解决了我的问题 另请参阅以下jquery论坛网站上的解决方案。 https://forum.jquery.com/topic/how-to-set-minimum-and-maximum-date-dynamically-in-jquery-ui-date-picker
$.datepicker.setDefaults({
showOn: 'button',
buttonImage: 'images/calendar.gif',
buttonImageOnly: true,
dateFormat: 'yy-mm-dd',
minDate: '2013-09-10',
maxDate: '2013-10-10'
});
$('#frm_date').datepicker({
onSelect: function(selectedDate) {
$('#to_date').datepicker('option', 'minDate', selectedDate || '2013-09-10');
}
});
$('#to_date').datepicker({
onSelect: function(selectedDate) {
$('#frm_date').datepicker('option', 'maxDate', selectedDate || '2013-10-10');
}
});
$(".datepick").datepicker({dateFormat:'yy-mm-dd',minDate:'2013-09-10' ,maxDate:'2013-10-10'});
答案 1 :(得分:0)
您可以在显示日历之前调用beforeShow
方法设置任何选项:
$("#to_date").datepicker({
beforeShow:function(){
$(this).datepicker('option',
{
minDate:new Date()
}
);
}
});