Rumah > Soal Jawab > teks badan
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>
Lajur pertama dalam tatasusunan dua dimensi tidak dipaparkan, jadi anda perlu mengecualikan arri semasa mencari. Jika saya memasukkan 1, kedua-dua lajur disertakan, tetapi saya mahu memasukkan 1 dan hanya memaparkan arr[0]. untuk melakukan ini? Saya menulis penapis sebagai fungsi, tetapi saya tidak menyelesaikannya
PHPz2017-05-15 17:05:06
Gunakan arr.slice(1, arr.length)
<tr ng-repeat="dataTr in arr.slice(1, arr.length) | filter:text">
Baiklah, saya salah baca soalan, cuma tambah peta
arr.map(function (subArr) {
return subArr.slice(1, subArr.length);
});
Memandangkan ungkapan sudut tidak menyokong pengisytiharan fungsi, anda perlu menulis perenggan ini dalam pengawal dan menetapkannya semula kepada $scope.arr