我将jQuery Datepicker用于两个不同的文本字段。一个字段用于开始日期,另一个字段用于结束字段。我使用minDate禁用当前日期之前的日期。我的代码是这样的:
$( "#start" ).datepicker({
minDate: 0,
dateFormat: 'yyyy-mm-dd',
showOnFocus: true,
showTrigger: '<img src="<?php echo base_url()?>images/calender.png" />'
});
$( "#end" ).datepicker({
minDate: 0,
dateFormat: 'yyyy-mm-dd',
showOnFocus: true,
showTrigger: '<img src="<?php echo base_url()?>images/calender.png" />'
}); 现在我需要检查结束日期是否必须等于或晚于开始日期。在结束日期字段中,必须禁用所选开始日期之前的所有日期。怎么做呢?
发布于 2012-05-25 12:25:23
首先,感谢所有帮助我找到答案的人。
我的问题的解决方案是使用以下代码:
$(document).ready(function(){
$("#depart ,#return_date").datepick({
minDate:0,
dateFormat:'yyyy-mm-dd',
showOnFocus: true,
showTrigger: '<img src="<?php echo base_url()?>images/calender.png" />',
onSelect: customRange
});
function customRange(dates) {
if (this.id == 'depart')
{
$('#return_date').datepick('option', 'minDate', dates[0] || null);
}
else
{
$('#depart').datepick('option', 'maxDate', dates[0] || null);
}
}
});发布于 2012-05-24 14:18:37
以下是所需代码的示例。
<script>
$(function() {
var dates = $( "#from, #to" ).datepicker({
defaultDate: "+1w",
changeMonth: true,
numberOfMonths: 3,
onSelect: function( selectedDate ) {
var option = this.id == "from" ? "minDate" : "maxDate",
instance = $( this ).data( "datepicker" ),
date = $.datepicker.parseDate(
instance.settings.dateFormat ||
$.datepicker._defaults.dateFormat,
selectedDate, instance.settings );
dates.not( this ).datepicker( "option", option, date );
}
});
});
</script>您可以在以下网址查看演示:Datepicker
参考Jquery UI网站。
发布于 2012-05-24 13:37:06
使用datejs库进行复杂的日期相关操作--> datejs.com
https://stackoverflow.com/questions/10731668
复制相似问题