Code licensed under New BSD License.
This directive allow to liven your tables. It support sorting, filtering and pagination. Header row with titles and filters automatic generated on compilation step.
For work in IE < 9 need jQuery, just add:
<!--[if lt IE 9]>
<script src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
<![endif]-->
- add pagination directive ngTablePagination (see usage)
- rename filter.name to filter.$$name according to issue #196
- add debugMode setting
- add defaultSort setting
- add filterDelay setting
- add multisorting (click on header with Ctrl-key)
- add css classes (ng-table-pager, ng-table-pagination, ng-table-counts)
- add support of
header-class
attribute - add fixes for compatibility with early versions of AngularJS
- add
data
field to ngTableParams - Allow expressions in the sortable & filter attribute (Issue #93)
- I abandoned from CoffeeScript in favor of a javascript, fully agree with http://blog.ponyfoo.com/2013/09/28/we-dont-want-your-coffee & (rus) http://habrahabr.ru/post/195944/
- added examples of table with grouping
- fully rewrited interface of ngTableParams
In functions that return data for the filters were removed .promise
$scope.names = function(column) {
...
def.resolve(names);
// return def.promise; - old code
return def;
};
bower install ng-table
We use Karma to ensure the quality of the code. The easiest way to run these checks is to use grunt:
npm install -g grunt-cli
npm install && bower install
grunt
The karma task will try to open Firefox and Chrome as browser in which to run the tests. Make sure this is available or change the configuration in karma.conf.js
- Pagination
- Sorting
- Filtering
- Cell template
- Row template
- Params in url
- Ajax
- Table with hidden pagination
- Custom template(pagination)
- Custom filters
- Table with checkboxes
- Table with grouping
- Table with grouping with callback
- Table with external control of data
- Export to CSV
For a list of configuration options available, see Configuring your table with NgTableParams
Let me know if you are using ng-table. It will motivate me to work harder. And if you like ng-table, just email me and add your website here Hope you like it, Thanks! :)
This project is part of Bazalt CMS.