angular.js - angular filter 对数组过滤时,排除arr[0]怎么做?

查看:102
本文介绍了angular.js - angular filter 对数组过滤时,排除arr[0]怎么做?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

js:
$scope.arr = [
["212","上","下","左","右"],
["12","1","2","3","4"],
]

html:
<input type="text" ng-model="text">

<tr ng-repeat="dataTr in arr | filter:text">
    <td ng-repeat="dataTd in dataTr">
    <ng-switch on="$first">
        <span ng-switch-when="true">{{index+1}}</span>
        <span ng-switch-default>{{dataTd}}</span>
    </ng-switch>
    </td>
</tr>

二维数组里面的第一列不显示,所以在搜索的时候需要排除arri,如果我输入1,两列都有的,但是我想输入1只显示arr[0],怎么做啊?我将filter写成函数,但是没搞定

解决方案

用arr.slice(1, arr.length)

<tr ng-repeat="dataTr in arr.slice(1, arr.length) | filter:text">

好吧,题看错了,加个map就好

arr.map(function (subArr) {
  return subArr.slice(1, subArr.length);
});

由于angular expression不支持函数声明,你需要把这段写在controller里并重新赋值给$scope.arr

这篇关于angular.js - angular filter 对数组过滤时,排除arr[0]怎么做?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆