Javascript 设置minDate以防止在开始日期之前选择enddate

Javascript 设置minDate以防止在开始日期之前选择enddate,javascript,jquery,Javascript,Jquery,我有一个开始日期和结束日期供我选择。我正在使用jQuery日期选择器库 这就是我的函数目前的样子: $(function() { $(".txtEndDate").datepicker({ changeMonth: true, changeYear: true, showOn: 'button', buttonImage: '../../../images/calendar.png'

我有一个开始日期和结束日期供我选择。我正在使用jQuery日期选择器库

这就是我的函数目前的样子:

$(function() {

        $(".txtEndDate").datepicker({
            changeMonth: true,
            changeYear: true,
            showOn: 'button',
            buttonImage: '../../../images/calendar.png',
            buttonImageOnly: true,
            title:'Click to open calendar',
            alt:'Click to open calendar'
        });


    });




    $(function() {

        $(".txtStartDate").datepicker({
            changeMonth: true,
            changeYear: true,
            showOn: 'button',
            buttonImage: '../../../images/calendar.png',
            buttonImageOnly: true,

            title:'Click to open calendar',
            alt:'Click to open calendar',

            onSelect: function() {
                var start = $(this).datepicker("getDate");
                start.setDate(start.getDate() + 7);
                $(".txtEndDate").datepicker("setDate", start);
            }

        });



    });
它是有效的,但我想在用户不允许在今天之前选择日期时使用它,因为它无论如何都没有意义。例如,选择
2018-01-01
应该是无效的。你明白了

找到一份建议使用
minDate
解决此问题的文档。它说:

//initialize the datepicker
$( ".selector" ).datepicker({
  minDate: new Date(2007, 1 - 1, 1)
});

//get or set mindate option
// Getter
var minDate = $( ".selector" ).datepicker( "option", "minDate" );

// Setter
$( ".selector" ).datepicker( "option", "minDate", new Date(2007, 1 - 1, 1) );
鉴于我对字段所代表的内容感到困惑,有没有办法阻止人们在今天之前选择任何日期

我尝试了这个解决方案:


但是它没有禁用它,仍然允许我选择。

您可以使用datepicker插件的minDate属性禁用过去的日期,如下所示

$(“.txtEndDate”).datepicker({
minDate:new Date(),//将其添加到可分配的过去日期
变化月:对,
变化年:是的,
showOn:'按钮',
buttonImage:“../../../images/calendar.png”,
buttonImageOnly:正确,
标题:“单击以打开日历”,
alt:“单击以打开日历”

});您可以使用datepicker插件的minDate属性禁用过去的日期,如下所示

$(“.txtEndDate”).datepicker({
minDate:new Date(),//将其添加到可分配的过去日期
变化月:对,
变化年:是的,
showOn:'按钮',
buttonImage:“../../../images/calendar.png”,
buttonImageOnly:正确,
标题:“单击以打开日历”,
alt:“单击以打开日历”

});使用下面的代码,它将帮助您防止从今天开始选择旧日期

minDate : 0 // for current date

minDate: new Date(2007, 1 - 1, 1) // for particular minDate 
$(“input.DateFrom”).datepicker({
minDate:0
});

使用下面的代码,它将帮助您防止从今天开始选择旧日期

minDate : 0 // for current date

minDate: new Date(2007, 1 - 1, 1) // for particular minDate 
$(“input.DateFrom”).datepicker({
minDate:0
});



为什么是0?而且不是最新的date@Daredevil0表示当前日期,您也可以将日期更改为固定日期,如minDate:new date(2007,1-1,1)是否有方法防止人们选择结束日期<开始日期?这并不意味着什么sense@Daredevil当然可以这样使用maxDate:“+1m+1w”。设置结束日期。但它用于设置结束日期<开始日期。我不遵循,如何确保我不能选择小于开始日期的结束日期?为什么为0?而且不是最新的date@Daredevil0表示当前日期,您也可以将日期更改为固定日期,如minDate:new date(2007,1-1,1)是否有方法防止人们选择结束日期<开始日期?这并不意味着什么sense@Daredevil当然可以这样使用maxDate:“+1m+1w”。设置结束日期。但它用于设置结束日期<开始日期。我不明白,如何确保我不能选择小于开始日期的结束日期?new date()将采用本地系统的默认格式,因此将其添加到txtenddate和txtstartdate?是,您可以将此项添加到txtendate和txtstartdate日期选择器如果我尝试选择今天之前的日期会发生什么?添加此项将禁用今天之前的日期,它将不允许您选择过去的日期New date(),将采用本地系统的默认格式,因此将此项添加到txtendate和txtstartdate?是,您可以将此项添加到txtendate和txtstartdate日期选择器如果我尝试选择今天之前的日期会发生什么情况?添加此项将禁用今天之前的日期,它将不允许您选择过去的日期