国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

Angular表格神器ui-grid應用詳解

2019-11-19 15:14:23
字體:
來源:轉載
供稿:網友

本文實例為大家分享了Angular表格神器ui-grid的具體代碼,供大家參考,具體內容如下

HTML:  (代碼僅用于解釋得更清楚,并未完全展示)

<!doctype html><html ng-app="app"> <head>  <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.5.0/angular.js"></script>  <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.5.0/angular-touch.js"></script>  <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.5.0/angular-animate.js"></script>  <script src="http://ui-grid.info/docs/grunt-scripts/csv.js"></script>  <script src="http://ui-grid.info/docs/grunt-scripts/pdfmake.js"></script>  <script src="http://ui-grid.info/docs/grunt-scripts/vfs_fonts.js"></script>  <script src="/release/ui-grid.js"></script>  <script src="/release/ui-grid.css"></script>  <script src="app.js"></script> </head> <body>  <div ng-controller="MainCtrl">   <div id="user-grid" ui-grid="gridOptions" class="user-grid" ui-grid-resize-columns></div></div>  </div> </body></html>

ui-grid-resize-columns:使列可以改變寬度,像這樣:

 Jvar app = angular.module('app', ['ngTouch', 'ui.grid']);

app.controller('MainCtrl', ['$scope', function ($scope) {i18nService.setCurrentLang("zh-cn");    $scope.gridOptions = {      enableSorting: true,      columnDefs: [        {field: 'accountName', displayName:'手機號', width: 200},        {field: 'userName', displayName:'用戶名', width: 100},        {field: 'unitName', displayName:'單位', width: 300},        {          field: 'createTime', displayName: '注冊時間', width: 200,          cellTemplate: '<div class="ui-grid-cell-contents"><span ng-bind="grid.appScope.rDateFormat(row.entity.createTime)"></span></div>'        },        {          field: 'roleList', displayName: '類型', width: 200,          cellTemplate: '<div class="ui-grid-cell-contents"><span ng-repeat="item in row.entity.roleList" style="margin-right:5px;">{{item.roleName}}</span></div>'        },        {          field: 'accountId', displayName: '詳細信息', width: 200,          cellTemplate: '<div class="ui-grid-cell-contents">                   <button type="button"                        ng-click="grid.appScope.showAccountDetail(row.entity.roleList, row.entity.accountId)"                       style="line-height: normal" class="btn-primary btn">查看詳情</button></div>'        }      ]    };     $scope.gridOptions.data = [     {       'accountName':'15555555555',       'userName':'浮生若夢',       'unitName':'無',       'createTime':1506661676435,       'roleList':[{roleName:'前端','roleId':2},{roleName:'后端','roleId':3}],       'accountId':201     },     {       'accountName':'15555555555',       'userName':'浮生若夢',       'unitName':'無',       'createTime':1506661676435,       'roleList':[{roleName:'前端','roleId':2},{roleName:'后端','roleId':3}],       'accountId':201     }    ]}]);

效果如下:


ui-grid使用中文:i18nService.setCurrentLang("zh-cn");

設置ui-grid格式:通過html中的ui-grid='gridOptions' (gridOptions可以自己定義) 再通過$scope.gridOptions來綁定

在上面的代碼中:

enableSorting:定義是否排序
對于列的定義columnDefs中:
field就是表格數據$scope.gridOptions.data中的字段,
displayName就是顯示在表格中的顯示的列項名,如果沒有定義,那么顯示的就是field的名稱

ui-grid怎么單獨定義一個單元格的樣式?比如做成一個按鈕。

可以使用cellTemplate屬性,但是需要注意的是,單元格定義的html中如果要綁定函數,并不能像angular常規的來綁定,需要在綁定的函數前加上“grid.appScope”,比如“grid.appScope.func()”
ui-grid如果要將某行的某個數據傳入函數中需要使用這樣的形式:“row.entity.createTime”,creatTime就是你要傳入的參數的名稱(對應于“field”)
表格的數據可以通過請求后端接口來獲取,賦值給$scope.gridOptions.data,需要注意數據格式是否符合要求,否則就要先處理好。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 岚皋县| 澄城县| 双鸭山市| 郓城县| 宜宾县| 成安县| 安龙县| 沁阳市| 山阳县| 南华县| 华池县| 奎屯市| 桂平市| 星座| 固原市| 岑巩县| 灵石县| 黄平县| 石城县| 清丰县| 阿克| 石狮市| 天柱县| 松潘县| 察雅县| 昌都县| 河曲县| 集贤县| 屏山县| 淮北市| 黔西| 桂阳县| 延津县| 扎赉特旗| 阜平县| 孟州市| 景洪市| 抚顺市| 宿州市| 英超| 白城市|