【发布时间】:2017-02-06 05:16:15
【问题描述】:
我有以下指令可以正常工作。
angular.module('myApp').directive('jqdatatable', function () {
return {
restrict: 'A',
link: function (scope, element, attrs, ngModelCtrl) {
var options = {};
if (scope.dtOptions) {
options = scope.dtOptions;
}
console.log('applying data table');
element.DataTable(options);
}
};
});
我像这样使用这个指令:
-
HTML:
<table jqdatatable> <thead> <tr> <th>Col1</th> <th>Col2</th> <th>Col3</th> </tr> </thead> <tfoot> <tr> <th>Col1</th> <th>Col2</th> <th>Col3</th> </tr> </tfoot> </table> -
例如来自控制器的 javascript:
$scope.dtOptions = { 'processing': true, 'serverSide': true, 'pageLength': 25, 'ajax': 'read_data_tables.php' };
但是当您在一个视图中有多个数据表时,问题就来了。 您不能多次设置 $scope.dtOptions。 似乎这种方法在这种情况下效率不高。
如果有人知道如何集成此代码以在一个视图中处理多个数据表,那就太好了。
谢谢。
【问题讨论】:
-
您可以将选项作为属性传递,而不是在范围内设置选项
标签: javascript jquery angularjs datatables angular-directive