Angular js Filter突出显示第一个结果

时间:2014-05-01 23:54:56

标签: angularjs

我在指向性一侧有 ng-repeater 过滤器,我想高亮显示过滤数据的第一个单元格当开始输入和过滤数据时出现。我已尝试使用 doucment.querySelect 选择第一个孩子,但它不起作用我猜是因为过滤器数据还没有准备好,并且第一个孩子仍然是旧数据。无论如何可以得到第一个搜索结果并添加一个类?

<textarea ng-model="keyword" ng-keydown="search($event)">

    <ul class="hint-list">
        <li ng-show="showPanel || (filtered.length > 0 && keyword.length > 0)" ng-repeat="option in filtered = (options | filter:keyword)" ng-click="appendOption(option, $index, $event)">{{option.name}}</li>
    </ul>

1 个答案:

答案 0 :(得分:1)

您可以用来申请课程的

ng-repeat exposes a $first variable(在这里,我们假设课程highlight是您要申请的课程):

<ul class="hint-list" ng-class="{highlight: $first}">
  <li ng-show="showPanel || (filtered.length > 0 && keyword.length > 0)" ng-repeat="option in filtered = (options | filter:keyword)" ng-click="appendOption(option, $index, $event)">{{option.name}}</li>
</ul>

JSBin example