我们在我们的智能手机产品中使用Mobiscroll ( http://code.google.com/p/mobiscroll/ ) 作为日期选择器解决方案。
它适用于桌面浏览器、android 2.3、iPhone 4S - 任何日期格式。但是,仅当日期格式为 yyyy-mm-dd时,它才能在 iPhone 5(准确地说是 5.0.1 版)中工作。
由于日期的格式来自 excel 表,我们无法控制那里,因此选择器必须使用各种格式。
重现问题的步骤:
设置页面并输入 type="date" 以使用 mobiscroll。您可以使用 mobiscroll 演示页面 ( http://demo.mobiscroll.com/ )
有任何不同于 yyyy-mm-dd 的格式,比如说 mm/dd/yyyy,所以将 input type="date" 的值设置为 value="09/27/2012"。
在 IOS 5 中打开页面。
预期: 当我们点击日期选择器时,选择器应该加载给定的初始值,我们应该能够将其设置为新值。此外,即使设置了新值,也应保留格式。
实际: 输入字段为空。选择器显示今天的日期,当我在选择器中单击“设置”时,该值未设置到输入字段中。
我们正在使用 mobiscroll 2.0 rc3。
可能的原因: 我认为这个问题与浏览器对 html 输入类型的支持有关。我们也在 Iphone 4S 中进行了测试,没有任何问题。我们发现,Iphone 4S 不支持输入 type="date"(与 Modernizr 核对过),但 Iphone 5 支持。
我们还没有找到修复的确切位置,但我们至少认为原因可能是这个。