2010-04-03 37 views
0

我最近一直在使用下面的一段代碼來限制我的第二個日期選擇器(結束日期),以便它不會在第一個日期選擇器的日期之前。jQuery Datepicker - 以編程方式限制第二個日期選擇器

$("#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){ 

    }      
}); 

然而,最近,我想用格式化我datepickers:

dateFormat: 'yy-mm-dd' 

但現在,第二個日期選擇器實際上允許用戶之前選擇一個日期1天。

例如,如果用戶選擇第一個日期:2010-04-03,當第二個日期選擇器彈出時,他們可以選擇2010-04-02(第一個選定日期前的一天)。

我不希望用戶能夠選擇在他們的第一個選定日期之前的日期。

任何想法,爲什麼這是不工作後,我在「dateFormat」中添加?

回答

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){ 

    }      
}); 


}); 
+0

這是它...謝謝! – Dodinas 2010-04-03 19:11:04

0

你可以交替做這個

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