は、下のリンクを参照してくださいAngularJS
http://codepen.io/anon/pen/fjkcg
HTML:
<section ng-app="app" ng-controller="MainCtrl">
<span class="label">Ordered By: {{orderByField}}, Reverse Sort: {{reverseSort}}</span><br><br>
<table class="table table-bordered">
<thead>
<tr>
<th>
<a href="#" ng-click="orderByField='firstName'; reverseSort = !reverseSort">
First Name <span ng-show="orderByField == 'firstName'"><span ng-show="!reverseSort">^</span><span ng-show="reverseSort">v</span></span>
</a>
</th>
<th>
<a href="#" ng-click="orderByField='lastName'; reverseSort = !reverseSort">
Last Name <span ng-show="orderByField == 'lastName'"><span ng-show="!reverseSort">^</span><span ng-show="reverseSort">v</span></span>
</a>
</th>
<th>
<a href="#" ng-click="orderByField='age'; reverseSort = !reverseSort">
Age <span ng-show="orderByField == 'age'"><span ng-show="!reverseSort">^</span><span ng-show="reverseSort">v</span></span>
</a>
</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="emp in data.employees|orderBy:orderByField:reverseSort">
<td>{{emp.firstName}}</td>
<td> <input type="text"
ng-init="empx['name_'+$index]=emp['lastName']"
ng-model="empx['name_'+$index]"/> </td>
<td>{{emp.age}}</td>
</tr>
</tbody>
</table>
</section>
コントローラー:
var app = angular.module('app', []);
app.controller('MainCtrl', function($scope) {
//$scope.orderByField = 'firstName';
$scope.reverseSort = false;
$scope.empx={};
$scope.data = {
employees: [{
firstName: 'John',
lastName: 'F',
age: '6703114'
},{
firstName: 'Frank',
lastName: 'D',
age: '665087589'
},{
firstName: 'Sue',
lastName: 'F',
age: '5271761234'
},
{
firstName: 'Sue',
lastName: 'F',
age: '52'
},{
firstName: 'Sue',
lastName: 'F',
age: '2334564564564564564'
}]
};
});
私たちは、TextBoxコントロールと日付ピッカーを持っていますng-repeat内のコントロール。私が姓でフィルタリングするとき、それは適切にソートされません。どのように私はコントロール内のコレクションを並べ替えることができます。年齢と姓の並べ替えが機能していない、姓の並べ替えが値のために機能していないため、テキストボックスコントロール内にあり、年齢が大きいために作業しませんでしたが、文字列として表示されました。どのようにソートをすべてのケースで適切に動作させることができますか。
テンプレートで
ng-model="item.lastName"
を使用してempx反復処理 -はNG-INITを削除し、直接あなたの従業員のデータの複製(または元)を使用してみてください!私は何の問題も見ませんか?あなたのソートしましたか? –
@ Angular_10 lastNameと年齢ソートが機能していない – SivaRajini