【问题标题】:cakephp form helper for a date: how to make minYear and maxYear work约会的 cakephp 表单助手:如何使 minYear 和 maxYear 工作
【发布时间】:2014-08-10 15:49:50
【问题描述】:

我正在尝试在 Cake-1.3 中实现日期选择器。我遇到的问题是我无法将年份选择器限制在所需的年份集合中,即从 2012 年到今年,无论那可能是什么。根据我自己的想法以及来自 cakephp 站点、Stack Overflow 和至少一个其他站点的示例,我已经尝试了 3 或 4 种编码方式。无论我采取哪种方法,选择列表中的年份都是从 1994 年到 2034 年。

这是当前版本的代码:

echo "<div class='date'>" . $this->Form->input('start_date', 
    array('type'=>'date',
        'default'=>array('month'=>$yesterday['month'],
        'day'=>$yesterday['mday'],
        'year' => $today['year'],
         array('dateFormat' => 'MDY', 'minYear' => 2012, 'maxYear' => $yesterday['year'],
          selected)
        )
    )
) . "</div>";

任何建议都将受到高度赞赏。

【问题讨论】:

    标签: php cakephp cakephp-1.3


    【解决方案1】:

    您的输入选项都应位于一个未嵌套的数组中。

    echo "<div class='date'>" . $this->Form->input('start_date', 
        array('type'=>'date',
            'default'=>array('month'=>$yesterday['month'],
             'day'=>$yesterday['mday'],
             'year' => $today['year']),
             'dateFormat' => 'MDY', 
             'minYear' => 2012, 
             'maxYear' => $yesterday['year']
        )
    )
    . "</div>";
    

    【讨论】:

    • 这种见解很好,但代码不起作用。年份的默认值后缺少')',以关闭默认值。
    • @user3758031 谢谢,更新了我的答案。我很难在 SO 上获得所有正确的关闭括号,因为我习惯于使用 ide 为你做这件事。 XD
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多