5

iPad默认为今天input type="date"获得焦点(由于下一个/上一个按钮,我假设使用蓝牙键盘的tab/shift-tab),例如在iPad上使用http://jsbin.com/etovur/1进行测试。

问题:是否有一种解决方法可以在 iPad 和 iPhone 上使用,以便在仅在字段中导航时使日期不默认为今天?

这是编辑现有数据并使用下一个/上一个导航字段时的 UI 问题,因为它将空白更改为今天,例如员工的终止日期字段设置为今天,并且该员工被解雇。

我们只需要一个适用于 iPad/iPhone 的解决方案,并注意input type=date两种设备之间的实现存在显着差异。桌面浏览器无关紧要,因为我们使用非本地日期控件(正是为了避免日期控件的工作方式和外观变化或是否提供这些问题)。该问题至少发生在装有 iOS5 的 iPad 和装有 iOS6 的 iPhone 上。

4

1 回答 1

0

最有效的解决方案:请参阅http://jsbin.com/etovur/5 - 当日期输入获得焦点时,延迟后将值设置为 ''。

  setTimeout(function() {
    document.getElementById('adate').value = '';
  }, 0);

最大的问题是,这种解决方法使用户很难选择今天(用户必须从今天滚动并再次返回才能选择今天)。由于这是恕我直言,iOS 上日期选择器的过度简化 UI 的缺陷,我认为对于我原来的问题没有任何可行的解决方案。

一些计时错误的可能性(下一个然后在慢速 iPad 上快速下一个?)。

于 2013-05-08T04:25:30.237 回答