还将其他插值改为ngBind指令,因为它更快一些。
我想通过ng-class向UI选择的特定LI元素添加一个类,但我不能这样做。
,
<ui-select ng-model="selected" theme="select2">
<ui-select-match placeholder="Select">{{$select.selected.name}}
</ui-select-match>
<ui-select-choices repeat="student in studentList | filter: $select.search" ng-class="{{student.name}} == 'ABC' ? 'found' : 'not_Found' "> {{student.name}}
</ui-select-choices>
</ui-select>
如果有人有任何想法请帮助我
你不应该在指令中使用插值值:
你应该避免动态改变插入字符串的内容(例如属性值或文本节点)。当计算原始字符串时,您的更改可能会被覆盖。这个限制既适用于直接通过JavaScript修改内容,也适用于间接使用指令修改内容。
来源:文档
你应该试试这个:
<ui-select ng-model="selected" theme="select2">
<ui-select-match placeholder="Select">{{$select.selected.name}}
</ui-select-match>
<ui-select-choices repeat="student in studentList | filter: $select.search" ng-class="student.name == 'ABC' ? 'found' : 'not_Found' ">
<span ng-bind="student.name"></span>
</ui-select-choices>
</ui-select>
我把我的ng-class指令放在ui-select指令的父类中,然后使用css文件中的类选择器在ui-select中选择子元素。例:
<div ng-class="{'some-class': condition}">
<ui-select...></ui-select>
</div>
CSS: .some-class a { border-color: red}
希望有帮助!