2013-05-10 109 views
4

我想知道是否有人可以幫助我。使用Dan Grossman的Bootstrap Date Picker我想在選定的開始日期添加30天,並將其定義爲maxDate,以便用戶無法選擇過去此日期。Bootstrap daterangepicker選擇開始日期+ 30天爲maxDate

我真的停留在這一點上,我找不到任何與我想要做的相關的文檔。這是我的代碼;

var min_date = new Date(); 
var max_date = '05/31/2013'; 

$('#limited').daterangepicker(
{ 
    minDate: min_date, 
    maxDate: max_date, 
}, 
function(start, end) { 
    $('#limited') 
     .data("showAddEventDialogue_dateRangeStart", start) 
     .data("showAddEventDialogue_dateRangeEnd", end); 
}); 

任何幫助或建議將非常感激。

非常感謝。

+1

我還沒有使用這個模塊,但是我可以看到你使用日期對象作爲minDate和一個字符串作爲maxDate。你有沒有試過這樣做:'var min_date = max_date = new Date(); max_date.setDate(max_date.getDate()+ 30);' – thebreiflabb 2013-05-10 09:08:58

+0

它爲我工作...無需看到答案..謝謝 – 2016-04-01 13:24:06

回答

1

由於thebrieflabb在他的評論中提到,你可以按如下解決這個問題:

var endDate = new Date(); 
endDate.setDate(startDate .getDate()+30); 

你可以找到更多的解決方案in this thread

希望這有助於。

+0

感謝您的。我需要它根據用戶選擇的開始日期添加30天,而不是從今天開始的30天! – user774715 2013-05-10 11:37:46

3

看來插件只接受minDatemaxDate的具體日期格式,即mm/dd/yyyy

僅僅使用new Date();不幸的是不起作用,因爲它返回格式不正確的完整日期。

下面的代碼似乎適用於我,它將使用今天總是使用最小和+30最大。

/* Get the code into mm/dd/yyyy format */ 
function getFormatDate(d){ 
    return d.getMonth()+1 + '/' + d.getDate() + '/' + d.getFullYear() 
} 

$(document).ready(function() { 
    var minDate = getFormatDate(new Date()), 
    mdTemp = new Date(), 
    maxDate = getFormatDate(new Date(mdTemp.setDate(mdTemp.getDate() + 30))); 

    $('#daterange').daterangepicker(
    { 
     minDate: minDate, 
     maxDate: maxDate 
    } 
    ); 
}); 
+0

謝謝你。我需要它根據用戶選擇的開始日期添加30天,而不是從今天開始的30天! – user774715 2013-05-10 11:38:21

+0

沒有標準,認真。它接受「mm/dd/yy」,它在.NET中是「MM/dd/yyyy」,而moment.js是moment().format('MM/DD/YYYY')。它們似乎都使用不同的大寫形式。與此同時,時刻僅接受ISO日期格式('YYYY-MM-DD'),而datetimepicker(使用MOMENT)期望某些字段的時刻,但顯然是格式字符串'mm/dd/yyyy' .format('MM/DD/YYYY')爲最小/最大值?這是瘋狂的,爲什麼Flash永遠不會死亡,直到網絡獲得它的$命中。 – Triynko 2015-07-21 18:34:38

0

你可以使用這樣的:

var date2 = new Date(); 
date2.setDate(date2.getDate()-1); 
console.log(date2); 
$('#daterange').daterangepicker({ 
    showDropdowns: false, 
    format:'MM/DD/YYYY', 
    maxDate:date2, 
    autoclose: true, 
    autoApply:true, 

}); 

希望這將幫助任何人。