【问题标题】:jQuery Datepicker - Programatically Limit Second DatepickerjQuery Datepicker - 以编程方式限制第二个 Datepicker
【发布时间】:2010-04-03 18:45:01
【问题描述】:

我最近一直在使用以下代码来限制我的第二个日期选择器(结束日期),使其不早于第一个日期选择器的日期。

$("#datepicker").datepicker({
 minDate: +5, 
 maxDate: '+1M +10D',  
 onSelect: function(dateText, inst){
           var the_date = dateText;
           $("#datepicker2").datepicker('option', 'minDate', the_date);

 }
 });
 $("#datepicker2").datepicker({

    maxDate: '+1M +10D', 
    onSelect: function(dateText, inst){

    }                       
});

但是,最近,我想使用以下方式格式化我的日期选择器:

dateFormat: 'yy-mm-dd'

但是现在,第二个日期选择器实际上允许用户选择 1 天前的日期。

例如,如果用户选择第一个日期:2010-04-03,当第二个日期选择器弹出时,他们可以选择 2010-04-02(他们第一个选择日期的前一天)。

我不希望用户能够选择在他们选择的第一个日期之前的日期。

任何想法为什么我在“dateFormat”中添加后这不起作用?

【问题讨论】:

    标签: jquery jquery-ui datepicker


    【解决方案1】:

    选项 minDate 期望一个日期对象而不是字符串对象。但是您可以指定格式并按如下方式进行转换:

    $(document).ready(function() {  //Runs when tab is loaded
    
    var dateFormat = "yy-mm-dd";
    
    $("#datepicker").datepicker({
     minDate: +5, 
     dateFormat:dateFormat,
     maxDate: '+1M +10D',  
     onSelect: function(dateText, inst){
               var the_date = $.datepicker.parseDate(dateFormat,dateText);
               $("#datepicker2").datepicker('option', 'minDate', the_date)
     }
     });
     $("#datepicker2").datepicker({
    
        maxDate: '+1M +10D', 
        dateFormat:dateFormat,
        onSelect: function(dateText, inst){
    
        }                       
    });
    
    
    });
    

    【讨论】:

      【解决方案2】:

      你也可以这样做

             onSelect: function(){
                 $("#datepicker2").datepicker('option', 'minDate', $(this).val());
             }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-02-12
        • 2018-02-12
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多