3

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

IE 日期选择器

Chrome 日期选择器

任何帮助,将不胜感激。

罗斯。

编辑: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>
4

1 回答 1

1

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

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

支持 IE 和其他浏览器的最佳解决方案是为 datepicker 实现 javascript 解决方案。

那里有很多,我发现最用户友好的是这个:http ://www.ama3.com/anytime/

于 2013-12-12T15:01:41.980 回答