ng-class不能正确处理UI选择



我想通过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> 
还将其他插值改为ngBind指令,因为它更快一些。

我把我的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}

希望有帮助!

相关内容

  • 没有找到相关文章

最新更新