2013-10-17 105 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

我编辑我的答案与我能想到的最佳解决方案。 –

相关问题