2014-02-12 38 views
2

我的HTML:如何創建數據表基本angularjs指令

<table data-table ng-show="bookings"> 
    <thead> 
     <tr> 
      <th>Name</th> 
      <th>Surname</th> 
      <th>ID number</th> 
      <th>Email</th> 
      <th>Cellphone</th> 
     </tr> 
    </thead> 
    <tbody> 
     <tr ng-repeat="booking in bookings | orderBy:['student.firstname', 'student.surname']"> 
      <td>{{ booking.student.firstname }}</td> 
      <td>{{ booking.student.surname }}</td> 
      <td>{{ booking.student.id_number }}</td> 
      <td>{{ booking.student.email }}</td> 
      <td>{{ booking.student.cellphone }}</td> 
     </tr> 
    </tbody> 
</table> 

我的指令:

.directive('dataTable', function() { 
     return { 
      restrict: 'A', 
      replace: false, 
      transclude: true, 
      link: function (scope, el, attrs) { 
       console.info('dataTable', el); 
       $(el).dataTable(); 
      } 
     } 
    }) 

我沒有得到任何錯誤,但不會顯示任何內容(我不知道現在是什麼el是)。我希望在信息被轉移的地方使用它,然後使用dataTable的'零配置'。我想這將是簡單的,唉,指令:(

+0

順便說一句,你檢查了[angular-table](http://angulartable.com/)? – Atropo

+0

@Atropo謝謝你,雖然我必須有過濾框和分頁 – Tjorriemorrie

回答

0

有你ng-grid一看?這是一個本地實現,它提供分頁/排序等

但如果必須使用數據表,看看這個答案,我最近使用的從這裏的解決方案,效果不錯:https://stackoverflow.com/a/16096071/2383201

+0

是的,但ng-grid尚不支持1.2。直到那時...... – Tjorriemorrie

+0

我見過這個例子。這不是我想要做的。它有太多的配置可以通過transclusion完成 – Tjorriemorrie

0

不能使用data作爲屬性前綴將其更改爲別的,如myTable(用法:my-table)會讓指令撿起來。

但是,現在似乎無法解析列,這意味着唯一的解決方案是由@Skinty給出的the link