2013-10-17 107 views
1

這就是一刻即時通訊使用的是創建輸入字段:Symfony的2輸入日期,只顯示前的日子今天

$builder->add('foundingdate', 'date')... // more fields 

它顯示的日期在未來是這樣的:

10.18.13 
10.19.13 
10.20.13 
... 
.. 
10.20.15 
.. 
. 

是有一個簡單的方法可以在今天之前幾天顯示?

今天是13年10月17日,因此輸入只是應顯示

10.16.13 
10.15.13 
10.14.13 
... 
.. 
. 
etc 

回答

1

根據您的代碼段,您可以使用默認的小部件,讓你有3個表,一個用於年,一個月和一天?如果您restrict values for months or days,您將無法選擇某些日子。它只會工作一年。例如,10月17日,如果刪除17日後的日子,用戶將無法選擇9月25日。我建議你使用validation來檢查提交的日期是否過去。

編輯:您可以使用新屬性max=""<input type="date" />(請參閱W3Schools)。它適用於Chrome,但不是在Firefox上,試試這個

$builder->add('foundingdate', 'date', array(
    'widget' => 'single_text', 
    'attr' => array(
     'max' => date('Y-m-d') 
    ) 
)); 
當然
+0

,我會在後端驗證這一點,但在usabillity的眼裏就沒有意義,讓挑選的用戶這是一個發佈日期以往。 – Nextar

+0

我編輯我的答案與我能想到的最佳解決方案。 –

相關問題