如何在CakePHP表单中设置最小或最大日期限制?

时间:2016-01-20 16:05:06

标签: cakephp cakephp-2.0

在我当前的日期表单输入中,我有参数:

'maxYear' => date('Y')

这允许我将最大年份限制为今年,但我还需要限制日期选择,以便用户以后无法选择日期。使用maxYear只允许限制年份,但我还需要数月和数天

1 个答案:

答案 0 :(得分:2)

即使您手动编写了表单助手(或HTML表单选项),也无法做到这一点。

问题:

如果您将月份限制为1-7(如果我们目前在7月份),则用户将无法选择上述任何一个月的年份。

解决方案:

使用JavaScript onchange validation。当字段更改日期时,请根据所需的日期范围检查所选日期,并在失败时发出通知。 (如果你正在使用jQuery,请参阅jQuery's .change() documentation

(然后在后端验证,当然,因为JavaScript很容易操作)