我有一个奇怪的问题,<select>
控件在更改值(两次)后使用AngularJS停止在IE11中显示其下拉列表。
Chrome(42)和FF(37)没有出现此问题。
Plunker:http://plnkr.co/edit/Ea0nMnPxXdqm8O59NyZS?p=preview
小提琴:http://jsfiddle.net/xydvqo0q/
步骤:
一旦进入此状态,鼠标单击或Alt-downarrow都不会显示下拉列表。
(此外,同一页面上的其他选项也会停止显示其下拉列表,并且页面似乎存在一般控制/窗口问题 - 例如,您无法选择HTML文本,而其他控件也会赢得& #39; t显示焦点或插入符号。似乎IE失去了关于哪个是活动&#34;窗口&#34;以及它似乎被卡在选择内部的情节。按Tab键几次将其从卡住中取出状态。)
现在,IE控件/窗口错误并不常见。但这很奇怪,因为要重现的具体要求。我已经将这个例子剥离出来似乎是复制所需的最低要求(但你可能会认为页面中有很多东西应该是无关紧要的 - 不要害怕)。
要显示的问题,页面需要以下内容:
{{selecteditem.number}}
的表行必须在那里,并且必须在嵌套表之后(在删除问题之前移动它)。我将它移到一个单独的表中,问题仍然存在。selecteditem.number
数据必须不同。如果&#34;数字&#34;这两个项的值相同,不会显示问题。border-collapse: collapse
。如果没有此属性,或者此属性具有不同的值,则不会发生此问题。注意:该表可以从父表继承此属性,也可以从表CSS规则或类中继承此属性(如演示所示),但问题仍然存在。将其删除&#34;直播&#34;使用IE的F12开发控制台,问题得到解决。TD
- 即&#34; hellos&#34; - 必须有CSS边框。他们可以继承这个,或者从类中获取它(根据演示)。 基本上,我必须告诉客户端他们可以有一个折叠边界的表来显示字段表中的子项(通常比演示中的更多)或者有一个下拉列表,但不是两者都有。 (或者不要使用IE,这不是一个选项,或者改变你的表单顺序,这对用户来说没有任何意义。)
我尝试不使用ng-options
(而是ng-repeat
- option
},但我得到了相同的结果(我只限于2个链接,所以这里&#39; s plnkr ID:95XcM9j2eY70jUK10UrH)。
我可以完全转储选择。