本文介绍了Jquery UI datepicker限制选择[工作日]的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试设置datepicker以将选择范围限制为5天。
I am trying to set up datepicker to restrict selection range to 5 days.
这是确定和工作,但问题是这一天必须是工作日,没有星期日和星期六,这意味着如果我选择5月18日星期五,我的限制将是5月24日星期四。
This is ok and working, but the problem that this days must be 'working days', without Sundays and Saturdays, this means that if I choose Friday 18 May, my limit will be Thursday 24 May.
任何想法?我有以下代码:
Any idea? I have the following codes:
$('.datepicker').datepicker({
dayNames: ["Domingo", "Lunes", "Martes", "Miercoles", "Jueves", "Viernes", "Sábado"],
dayNamesMin: ["Do", "Lu", "Ma", "Mi", "Ju", "Vi", "Sa"],
monthNames: ["Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"],
//dateFormat: "DD, dd MM yy",
//altFormat: "DD, dd MM yy",
dateFormat: "dd M yy",
showAnim: "drop",
beforeShow: LimitaRango,
beforeShowDay: $.datepicker.noWeekends
});
function LimitaRango(input){
if (input.id == 'FechaHasta'){
var minDate = new Date($('#FechaDesde').val());
minDate.setDate(minDate.getDate() + 1);
var maxDate = new Date($('#FechaDesde').val());
maxDate.setDate(maxDate.getDate() + 5);
return {
minDate: minDate,
maxDate: maxDate
};
}
}
而这个HTML:
<tr>
<td>Fecha Desde:</td>
<td colspan="2"><input type="text" name="FechaDesde" size="40" class="datepicker" id="FechaDesde"></td>
</tr>
<tr>
<td>Fecha Hasta:</td>
<td colspan="2"><input type="text" name="FechaHasta" size="40" class="datepicker" id="FechaHasta"></td>
</tr>
PS:非常感谢您提供的帮助,但问题是识别周末。现在,我有这个工作,但如果用户选择星期五,我的目标是将他的选择限制在星期四,但现在,由于这个代码被限制在星期四,因为周末包括在计数5天从选定的开始日。
推荐答案
你想要的是从今天到六天的任何时间未来。因此,您需要设置选项maxDate。
What you want is any time from today up to six days into the future. Hence, you need to set the option maxDate.
var maxd = Date();
maxd.setTime( maxd.getTime() + (1000 * 3600 * 24 * 6) );
$('.datepicker').datepicker({
... // existing options
maxDate: maxd,
});
这篇关于Jquery UI datepicker限制选择[工作日]的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!