CakePHP FormHelper和IE日期问题

时间:2013-12-11 12:34:44

标签: javascript css internet-explorer cakephp formhelper

我正在使用CakePHP构建一个日历应用程序,它在Chrome / Firefox等方面看起来很棒但是当我在IE中进行一些测试时,我注意到日期选择器根本没有加载:

IE Date Picker

Chrome Date Picker

任何帮助都将不胜感激。

罗斯。

编辑: PHP代码和HTML输出

echo $this->Form->input('start_date', array(
    'type' => 'Date',
    'label' => array('text' => 'Start Date', 'class' => 'formField'),'dateFormat' => 'DMY','minYear' => date('Y') - 70, 'maxYear' => date('Y') - 18,));

echo $this->Form->input('end_date', array(
    'type' => 'Date',
    'label' => array('text' => 'End Date', 'class' => 'formField'),'dateFormat' => 'DMY','minYear' => date('Y') - 70,'maxYear' => date('Y') - 18,));

HTML:

<form action="/EbCal/admins/report" id="reportIndexForm" method="post" accept-charset="utf-8">
  <div style="display:none;">
    <input type="hidden" name="_method" value="POST"/>
  </div>
  <div class="input Date">
    <label for="reportStartDate" class="formField">Start Date</label>
    <input name="data[report][start_date]" dateFormat="DMY" minYear="1943" maxYear="1995" type="Date" id="reportStartDate"/>
  </div>
  <div class="input Date">
    <label for="reportEndDate" class="formField">End Date</label>
    <input name="data[report][end_date]" dateFormat="DMY" minYear="1943" maxYear="1995" type="Date" id="reportEndDate"/>
  </div>
  <BR>
  <div class="submit">
    <input  type="submit" value="Generate Report"/>
  </div>
</form>

1 个答案:

答案 0 :(得分:1)

Internet Explorer以及Firefox不支持“日期”的输入类型。 (即<input type="Date">

如果浏览器是IE,CakePHP通常会生成一组选择下拉列表来选择日期。我不确定为什么你的不是,但选择的下拉菜单很少看起来非常友好。

支持IE和其他浏览器的最佳解决方案是为日期选择器实现一个javascript解决方案。

那里有很多,我发现最容易使用的是这一个:http://www.ama3.com/anytime/