禁用datepicker中id = $ id的所有日期
您好,我首先有这样的表格:agregareserva.php:
在GUImostrarcalendario.php我有:
query($sql1); ?> num_rows>0):?> fetch_array()):?> modify( '+1 day' ); $interval = new DateInterval('P1D'); $daterange = new DatePeriod($begin, $interval ,$end); $dates_ar = []; foreach ($daterange as $date) { $dates_ar[] = $date->format("Ymd"); } $disabled_dates = '"' . implode('", "', $dates_ar) .'"'; ?> $(function() { var disabledDays = []; var date = new Date(); jQuery(document).ready(function() { $( "#datepicker9").datepicker({ dateFormat: 'Ym-d', beforeShowDay: function(date) { var m = date.getMonth(), d = date.getDate(), y = date.getFullYear(); for (i = 0; i < disabledDays.length; i++) { if($.inArray(y + '-' + (m+1) + '-' + d,disabledDays) != -1) { //return [false]; return [true, 'ui-state-active', '']; } } return [true]; } }); }); });
此代码用于在datepicker中显示预订中的所有日期(预留),当在输入选择中选择id_habitacion(id room)时。
此代码正常工作但仅在datepicker中显示数据库中的第一条记录,例如id_habitacion = 1的表:
我预订此ID的所有日期
我的代码导致datepicker:
仅显示一个预订日期
最后我需要datepicker显示所有日期我在表格中的显示方式。
Thankss。
您的代码当前创建了多个实例
`$( "#datepicker9").datepicker({`
每个日期范围一个。 您需要将代码更改为仅执行一次 – 因此,在while循环之外
这需要在wile循环之外定义$ date_ar
此外,您不必要地使用连续的PHP代码片段
代码应如下所示
query($sql1); $dates_ar = []; if($query->num_rows>0) { while ($r=$query->fetch_array()) { $begin = new DateTime( $r["llegada"] ); $end = new DateTime( $r["salida"] ); $end = $end->modify( '+1 day' ); $interval = new DateInterval('P1D'); $daterange = new DatePeriod($begin, $interval ,$end); foreach ($daterange as $date) { $dates_ar[] = $date->format("Ymd"); } } ?>
这包括@ charlietfl关于不使用内爆但是使用的优秀观点
var disabledDays = ;
代替
注意,我使用了“C”编码风格
if() { while() { } }
而不是你使用的替代风格
if(): while(): endwhile; else: endif;
此外,没有else
阻止,因为无论如何都无事可做
- 如何从datepicker设置语言环境格式?
- 带有Rails的jQuery Datepicker 4
- 使用js datepicker替换bootstrap datepicker时,Datepicker无法正常工作
- 简单的datepickervalidation
- jquery datepicker动态更改位置
- 为什么jquery datepicker不能在textarea上工作,只能在输入上工作
- 如何调整Bootstrap DatePicker的大小?
- jQuery Datepicker – 禁用周末/假日以及接下来的三个工作日
- jQuery UI DatePicker – 禁用除每月第1天和第15天之外的所有日期