我正在构建一个日期选择器,供用户输入他们的年龄。这是三个下拉菜单(年,月,日),我一直在使用ng-hide来防止用户输入无效日期(2月30日)或日期表示用户未满18岁。
示例:如果用户选择1997,则隐藏6月到12月的月份,并且隐藏明天到月末的日期 - 从而使用户无法输入日期,这意味着他们未成年。
这一切在台式机和Android设备上运行良好,但是,当在我的iPhone上测试时,我发现下拉列表中的选项在任何情况下都不会被隐藏。我在下面提供了一个小提琴来说明我的观点。问题是......这是iOS设备的一个众所周知的问题,还是我忘记了什么?
http://jsfiddle.net/adamjld/oousahsg/1/
答案 0 :(得分:1)
尝试使用ng-if代替ng-show。不确定css display属性是否真的支持选项元素,而且ng-show是基于。似乎不是iOS上的情况。
无论如何,正确的方法是在您的选择上使用ng-options,并在用户更改其他字段时动态重新计算选项列表。