2009-08-27 35 views
0

我正在使用Kevin Luck的jquery日期選擇器插件,我在想什麼是將dpSetEndDate()值設置爲始終爲未來一年的最佳方式?我嘗試使用php:Kevin Luck的jQuery Date Picker插件 - 動態設置結束日期

<?php echo date('Y')+1;?>-<?php echo date('m-d');?> 

但這並沒有奏效。本身,php會返回我想要放置日期的位置,但它不會在javascript內呈現。

$('.date-picker').dpSetEndDate('01/01/2010'); 

僅供參考他的網站是在這裏: http://www.kelvinluck.com/assets/jquery/datePicker/v2/demo/index.html

回答

0
var today = (new Date), 
     nextYear = today.getFullYear()+1, 
     yearAhead = new Date(today.setYear(nextYear)) 

/* 
    yearAhead.getDate() // 27 
    yearAhead.getMonth()+1 // 7 
    yearAhead.getFullYear() // 2010 

*/ 

    dpSetEndDate(yearAhead.getMonth()+1 + '/' + yearAhead.getDate() + '/' + yearAhead.getFullYear()); 

希望我做了正確的月份部分..

+0

...如果您在2月29日運行此? –

+0

如果您在29日(閏年)運行此操作,它將提前在明年進行計算,因此2010年2月29日的初始日期將導致今年3月1日的日期對象。 –

1

我使用相同的插件,我正在試圖達到同樣的目標。我所做的就是使用PHP的點點和腳本聲明添加

endDate:'<?=date('d/m/Y', strtotime("+2 Years"))?>' 

,一切工作正常

+0

這隻有在您將服務器設置爲以PHP解析.js文件或腳本是內聯塊時纔有效。 –

1

你已經有一個答案,這是一個老問題,但只是供參考,這是推薦的方法:

$('.selector').datePicker(
    { 
     endDate: (new Date()).addYears(1).asString() 
    } 
); 

有添加到date.js Date對象的一些有用的方法,你可以使用這些,當你初始化它輕鬆值傳遞到日期選擇器。 Date.asString將始終在當前Date.format格式的日期中設置對象所期望的格式...

+0

超級優雅 - 謝謝! –

相關問題