【发布时间】:2015-01-06 10:07:56
【问题描述】:
我在 AngularJs 中使用 ngTable 创建了一个应用程序,该表具有过滤器和排序功能,该应用程序运行良好,但过滤和排序也运行良好,但问题是我需要过滤用逗号分隔的指定列如下所示
scientist,doctor
现在它将基于单个值进行过滤
谁能告诉我一些解决方法
var app = angular.module('app', ['ngTable']);
app.controller('IndexCtrl', function ($scope, $filter, ngTableParams) {
$scope.peoples = [{
"id": 145,
"desig": "doctor",
"name": "Manu",
"place": "ABCD",
"group": "ime123"
}, {
"id": 148,
"desig": "engineer",
"name": "John",
"place": "POLK",
"group": "ime148"
}, {
"id": 150,
"desig": "scientist",
"name": "Mary",
"place": "USE",
"group": "ime148"
}];
$scope.peoplesCopy = $scope.peoples;
$scope.mytable = new ngTableParams({
page: 1, // show first page
count: 10, // count per page
sorting: {
name: 'desc'
}
}, {
getData: function ($defer, params) {
$scope.peoples = angular.copy($scope.peoplesCopy);
var filteredData = $filter('filter')($scope.peoples, params.filter());
$scope.peoples = $filter('orderBy')(filteredData, params.orderBy());
$defer.resolve($scope.peoples);
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.19/angular.min.js"></script>
<script src="http://bazalt-cms.com/assets/ng-table/0.3.0/ng-table.js"></script>
<body ng-app="app">
<div ng-controller="IndexCtrl">
<table border="1" ng-table="mytable" show-filter="true">
<tr ng-repeat="people in $data">
<td sortable="id" data-title="'Id'">{{people.id}}</td>
<td sortable="desig" filter="{ 'desig': 'text' }" data-title="'Desig'">{{people.desig}}</td>
<td sortable="name" data-title="'Name'">{{people.name}}</td>
<td sortable="place" data-title="'Place'">{{people.place}}</td>
</tr>
</table>
</div>
</body>
【问题讨论】:
标签: javascript angularjs filtering ngtable