Javascript jQuery Datepicker-将第一个选择器设置为限制为第二个选择器的活动周

Javascript jQuery Datepicker-将第一个选择器设置为限制为第二个选择器的活动周,javascript,jquery,date,jquery-ui,datepicker,Javascript,Jquery,Date,Jquery Ui,Datepicker,两个日期选择器,工作人员将在datepicker 1中输入一个工作日,然后在to中输入第二个日期。日期2必须始终位于日期1的未来。周末不允许 这方面的工作示例(不包括周末,不允许在日期2中使用过去的日期)可在此小提琴中找到: 不过,我现在需要的是能够将第二个日期输入锁定为与第一个日期相同的一周,我考虑过设置maxDate,但我只能指定任意偏移量,如Xdays或特定日期。这是不好的,因为人们可能会选择星期四,例如,我不能再添加4天,并将其设置为最大日期,因为他们可以选择下周的星期一 因此,我如何将

两个日期选择器,工作人员将在datepicker 1中输入一个工作日,然后在to中输入第二个日期。日期2必须始终位于日期1的未来。周末不允许

这方面的工作示例(不包括周末,不允许在日期2中使用过去的日期)可在此小提琴中找到:

不过,我现在需要的是能够将第二个日期输入锁定为与第一个日期相同的一周,我考虑过设置maxDate,但我只能指定任意偏移量,如Xdays或特定日期。这是不好的,因为人们可能会选择星期四,例如,我不能再添加4天,并将其设置为最大日期,因为他们可以选择下周的星期一

因此,我如何将他们的日期输入限制为一周,其中该周设置为第一个字段中选定的日期

如果可能,请更新工作答案。谢谢。

试试这段代码

您可以为$to datepicker将maxDate设置为该周的最后一个日期

$from.datepicker{ defaultDate:新日期, 新日期, 在ShowDay之前:$.datepicker.noWeekends, onSelect:functiondateStr { $to.valdateStr; var date=$this.datepicker'getDate'; endDate=新的Datedate.getFullYear、date.getMonth、date.getDate-date.getDay+6; $to.datepickeroption,{minDate:new-datestr,maxDate:endDate}; } }; $'to'。日期选择器{ defaultDate:新日期, 在ShowDay之前:$.datepicker.noWeekends, onSelect:functiondateStr{ toDate=新日期str; //fromDate=ConvertDateToSortDateStringFromDate; //toDate=ConvertDateToSortDateStringToDate; } };
这是一个完美的方案,投票通过,答案被接受。谢谢。很高兴能帮助您:
<input id="from">
<input id="to"> 

$("#from").datepicker({
    defaultDate: new Date(),
    minDate: new Date(),
    beforeShowDay: $.datepicker.noWeekends,
    onSelect: function(dateStr)
    {
        $("#to").val(dateStr);
        $("#to").datepicker("option",{ minDate: new Date(dateStr)})
    }
  });

$('#to').datepicker({
   defaultDate: new Date(),
   beforeShowDay: $.datepicker.noWeekends,
   onSelect: function(dateStr) {
     toDate = new Date(dateStr);
     fromDate = ConvertDateToShortDateString(fromDate);
     toDate = ConvertDateToShortDateString(toDate);
   }
 });
var date = $(this).datepicker('getDate');
endDate = new Date(date.getFullYear(), date.getMonth(), date.getDate() - date.getDay() + 6);
$( "#to" ).datepicker("option",{minDate: new Date(dateStr), maxDate:endDate});