javascript - Ng-show 没有正确过滤

标签 javascript html css angularjs

我正在尝试删除我的列表,并且只希望它在我选择一个选项时显示。

我有这个片段并尝试使用 ng-show:selectedCompany

  <tr ng-show="selectedCompany" data-ng-repeat="client in filtered = (clients | companyFilter:selectedCompany)">

当我单击所有选项时,它会正确过滤,但当我单击其中一个时,它将无法正常工作。基本上它应该显示 json 数据。

演示: http://jsfiddle.net/s2bg6ugo/

最佳答案

它与真实性以及 Angular 如何观察变化有关。 [] == false,所以第一次加载时不会显示。但是随后您向数组添加了一个 id,所以现在 [1] != false。然而,因为 angular 只是观察数组本身而不是它的内容,所以没有变化(它是同一个数组),因此它不会更新,直到范围有另一个理由进行硬检查。

而是把它放在你的 ng-show 中:

ng-show="selectedCompany.length"

关于javascript - Ng-show 没有正确过滤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34960013/

相关文章:

javascript - jquery 选择器 - 除了最后 3 条记录之外的表的所有行

javascript - 如何在 onclick 中添加 fontawesome 微调器?

XML 文档中带有命名空间的 Javascript XPath

HTML 导航栏按钮只有在您单击其中的文本时才有效

php - 我的 CSS 未应用于我的 PHP 生成代码

javascript - 为什么我的 z-index 不起作用?

javascript - 保持div的纵横比

html - 链接和键盘焦点

html - 如何在我的文本周围制作一个圆形边框的 div?

javascript - 如何在按下按钮时覆盖 CSS 类并用另一个按钮将其删除?