【问题标题】:angular datatables not being rendered properly角度数据表未正确呈现
【发布时间】:2015-11-08 06:44:45
【问题描述】:

我正在尝试在我的 Angular js 项目中使用 Angular 数据表,但似乎遗漏了什么,有人可以帮帮我

链接:-

 <script src="~/Scripts/angular.min.js"></script>
    @*<script src="~/Scripts/angular-route.min.js"></script>*@
    <script src="~/Scripts/angular-resource.min.js"></script>

    <script src="~/widget/angular-datatables/angular-translate.min.js"></script>
    <script src="~/widget/angular-datatables/angular-datatables.util.js"></script>
    <script src="~/widget/angular-datatables/angular-datatables.factory.js"></script>
    <script src="~/widget/angular-datatables/angular-datatables.options.js"></script>
    <script src="~/widget/angular-datatables/angular-datatables.renderer.js"></script>
    <script src="~/widget/angular-datatables/angular-datatables.directive.js"></script>
    <script src="~/widget/angular-datatables/angular-datatables.instances.js"></script>
    <script src="~/widget/angular-datatables/angular-translate.min.js"></script>
    <script src="~/widget/angular-datatables/angular-datatables.js"></script>

html代码:-

<table datatable dt-options="dtOptions" dt-columns="dtColumns" dt-instance="dtInstance" class="row-border hover"></table>

js代码:-

var dtJson = [{
            "id": 860,
            "firstName": "Superman",
            "lastName": "Yoda"
        }, {
            "id": 870,
            "firstName": "Foo",
            "lastName": "Whateveryournameis"
        }, {
            "id": 590,
            "firstName": "Toto",
            "lastName": "Titi"
        }];

    $scope.RecordMasterModel.gridData = dtJson;
    $scope.dtInstance = {};
    $scope.dtOptions = DTOptionsBuilder.fromSource(dtJson).withPaginationType('full_numbers');

    $scope.dtColumns = [
        DTColumnBuilder.newColumn('id').withTitle('ID'),
        DTColumnBuilder.newColumn('firstName').withTitle('First name'),
        DTColumnBuilder.newColumn('lastName').withTitle('Last name'),
    ];

渲染后的页面:-

【问题讨论】:

    标签: angularjs angular-datatables


    【解决方案1】:

    我相信gridData 是您从 angular smartTables 或 angular UI Grid 中获得的?此外,fromSource() 表示 AJAX 源 - 通常是像 data.json 这样的文件,远程或本地。以下是实现您想要的步骤:

    标记:

    <table datatable dt-options="dtOptions" dt-columns="dtColumns"></table>
    

    脚本:

    $scope.dtColumns = [
       DTColumnBuilder.newColumn('id', 'ID'),
       DTColumnBuilder.newColumn('firstName', 'First name'),
       DTColumnBuilder.newColumn('lastName', 'Last name')
    ];  
    $scope.dtOptions = DTOptionsBuilder.newOptions()
      .withOption('data', dtJson)    
      .withDataProp('');
    

    最重要的部分是.withOption('data', dtJson),您将dtJson 变量推入dataTables 原生data 属性。

    现在代码可以工作了 -> http://plnkr.co/edit/ZNKMNYv9uXKCGKSOyo1y?p=preview

    【讨论】:

      猜你喜欢
      • 2019-07-10
      • 1970-01-01
      • 2022-10-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多