【发布时间】:2015-05-13 08:49:16
【问题描述】:
我注意到在 IE10 中,复选框的背景颜色填充为黑色,然后转回白色。当我使用 ng-repeat 进行排序时,IE10 似乎不会触发将复选框背景颜色变回白色/正常颜色的事件。
这是对复选框进行 ng-repeat 的 HTML,并根据状态和名称过滤它们:
<div ng-repeat="item in (items | orderBy:['!status','itemName'])">
<input type="checkbox" ng-click="itemClickEvent($event, item.itemId)" ng-model="item.status"/>
</div>
已经绑定到点击事件的控制器方法:
$scope.itemClickEvent = function ($event, itemId) {
var checkbox = $event.target;
var checkboxState = checkbox.checked;
if (checkboxState) {
$scope.items = itemsFactory.doSomething(itemId);
} else {
$scope.items = itemsFactory.doAnotherthing(itemId);
}
};
IE10版本:IE10.0.9200.17229
Angularjs 版本:AngularJS v1.2.23
问题截图:
有人可以帮我吗?
【问题讨论】:
-
你能提供一个 JSFiddle 的例子吗?
-
这与这些复选框的颜色有什么关系?在我看来那是 CSS,而不是 JavaScript。
-
不正确,浏览器会覆盖大多数复选框样式,因此这实际上是一个 javascript 问题。对于一个是白色的,其余的都是黑色的,我仍然有点困惑。是什么让你进入/离开每个州。您在控制台日志中看到任何内容吗?当您必须在事件侦听器中返回 true 时,我已经看到过这样的事情,但我认为 angular 不会对此进行处理。除了所有这些,升级你的角度也可能很好。
-
什么?这没有任何意义。无论发生什么,它都来自一些 OP 没有向我们展示的代码/标记。要么有一些其他的 JS 代码改变了一些东西 要么 有一些 CSS 这样做。我再说一遍 -
style、class或者这些复选框上的disabled属性没有任何变化。 -
还有一个关于类似问题的错误报告:connect.microsoft.com/IE/feedback/details/835620/…(因无法修复而关闭)
标签: angularjs checkbox internet-explorer-10 ng-repeat angularjs-orderby