2015-10-17 98 views
0

我在尝试使用选择值过滤列的ngTable example。 HTML代码(表部分)在ngTable中使用选择过滤器

<table ng-table="tableParams" class="table" show-filter="true"> 
    <tbody> 
    <tr ng-repeat="row in $data"> 
     <td data-title="'Name'" filter="{name: 'select'}" filter-data="names" sortable="'name'">{{ row.name }}</td> 
     <td data-title="'Age'" filter="{age: 'text'}" sortable="'age'">{{ row.age }}</td> 
    </tr> 
    </tbody> 
</table> 

Javascript代码

var app = angular.module('ngTableApp', ['ngTable']) 
     .controller('selectFilterController', function($scope, $filter, $q, NgTableParams) { 
     var data = [{name: "Moroni", age: 50}, 
        {name: "Tiancum", age: 43}, 
        {name: "Jacob", age: 27}, 
        {name: "Nephi", age: 29}, 
        {name: "Enos", age: 34}, 
        {name: "Tiancum", age: 43}, 
        {name: "Jacob", age: 27}, 
        {name: "Nephi", age: 29}, 
        {name: "Enos", age: 34}, 
        {name: "Tiancum", age: 43}, 
        {name: "Jacob", age: 27}, 
        {name: "Nephi", age: 29}, 
        {name: "Enos", age: 34}, 
        {name: "Tiancum", age: 43}, 
        {name: "Jacob", age: 27}, 
        {name: "Nephi", age: 29}, 
        {name: "Enos", age: 34} 
       ]; 
     $scope.names = ['Moroni', 'Enos', 'Nephi']; 
     $scope.tableParams = new NgTableParams({page: 1, count: 10}, {dataset: data}); 

     }) 

当我运行这段代码plunker,列 '名称' 的选择值是空白。

example

选择筛选器将通过调用列定义的fetchData功能获取其数据。

但是,有一个名为在该示例代码中没有fetchData功能。我很困惑,因为这里有什么问题?

+0

入住plunker错误.. – Rayon

+0

@RayonDabre看起来像plunker的问题。我的本地机器中的相同代码显示没有错误(但在我的问题中提到了相同的问题)。 – rajendra

回答

0

example我要指出的是滤波器数据属性在HTML(用于选择值)使用的NG-表的格式是以下形式的对象阵列。

$scope.names = [{id: "", title: ""}, {id: 'Moroni', title: 'Moroni'}, {id: 'Enos', title: 'Enos'}, {id: 'Nephi', title: 'Nephi'}]; 

更新plunker

0

应该这样写:

$scope.names = [{"id": "", "title": ""}, {"id": "Moroni", "title": "Moroni"}];