angularjs之ui-grid 使用详解

USB摄像头开发避坑指南:UVC协议中的Alternate Setting详解 本文深入解析UVC协议中的Alternate Setting机制,这是USB摄像头开发中影响视频流稳定性的关键。文章通过实际案例,详解了Alternate Setting如何管理USB带宽分配,并分析了帧率不达标、图像花屏等典型问题的根源与排查方法,为开发者提供实用的避坑指南和调试技巧。 阅读详情

最近一段时间在使用AngularJS 然后就找到ui-grid 这个比较不错的表格插件,感觉还不错,所以分享给大家(ps:新手第一次发)

html:

[html]  view plain  copy
  1. <pre name="code" class="html"><!--ui-grid css-->  
  2. <link rel="stylesheet" type="text/css" href="../lib/angular-ui/ui-grid/ui-grid.min.css">  
  3. <div class="gridStyle" ui-grid="gridOptions" ui-grid-selection ui-grid-resize-columns ui-grid-auto-resize ui-grid-exporter ui-grid-edit ui-gird-pagination ui-grid-cellnav>  
  4. </div>  
  5. <!--ui-grid js-->  
  6. <script src="../lib/angular-ui/ui-grid/ui-grid.min.js"></script>  
  7. <!--ui-grid excel export-->  
  8. <script src="../lib/angular-ui/ui-grid/csv.js"></script>  
  9. <!--ui-grid pdf export-->  
  10. <script src="../lib/angular-ui/ui-grid/pdfmake.min.js"></script>  
  11. <script src="../lib/angular-ui/ui-grid/vfs_fonts.js"></script>  
  12. <!--ui-grid-selection 选择行指令-->  
  13. <!--ui-grid-resize-columns 表格宽可拉伸指令-->  
  14. <!--ui-grid-auto-resize 自动使用div的高度和宽度指令-->  
  15. <!--ui-grid-exporter 导出指令-->  
  16. <!--ui-grid-edit 编辑指令-->  
  17. <!--ui-gird-pagination 分页指令-->  
  18. <!--ui-gird-pagination 分页指令-->  
  19. <!--ui-grid-cellnav 单元格指令-->  
  20. <!--gridStyle 自定义设置样式-->  


 js:
[javascript]  view plain  copy
  1. angular.module('app', ['ui.grid','ui.grid.selection','ui.grid.resizeColumns','ui.grid.autoResize','ui.grid.edit','ui.grid.exporter','ui.grid.pagination','ui.grid.cellNav'])  
  2. .controller('RootCtrl', function($scope,i18nService) {//前四个基本上是必用到的 后面的可以根据自身情况去加  
  3.             // 国际化;  
  4.             i18nService.setCurrentLang('zh-cn');  
  5.             $scope.gridOptions = {  
  6.                 data : 'myData',  
  7.                 //基础属性  
  8.                 enableSorting : true,//是否支持排序(列)  
  9.                 useExternalSorting : false,//是否支持自定义的排序规则  
  10.                 enableRowHeaderSelection : false,  
  11.                 enableGridMenu : false,//是否显示表格 菜单  
  12.                 showGridFooter: true,//时候显示表格的footer  
  13.                 enableHorizontalScrollbar : 1,//表格的水平滚动条  
  14.                 enableVerticalScrollbar : 1,//表格的垂直滚动条 (两个都是 1-显示,0-不显示)  
  15.                 selectionRowHeaderWidth : 30,  
  16.                 enableCellEditOnFocus:false,//default为false,true的时候单击即可打开编辑(cellEdit为true的时候,需要引入'ui.grid.cellNav')  
  17.                 //分页属性  
  18.                 enablePagination: true, //是否分页,default为true  
  19.                 enablePaginationControls: true, //使用默认的底部分页  
  20.                 paginationPageSizes: [10, 15, 20], //每页显示个数选项  
  21.                 paginationCurrentPage:1, //当前的页码  
  22.                 paginationPageSize: 10, //每页显示个数  
  23.                 paginationTemplate:"<div></div>", //自定义底部分页代码  
  24.                 totalItems : 0, // 总数量  
  25.                 useExternalPagination: true,//是否使用分页按钮            
  26.                 //选中  
  27.                 rowTemplate: "<div ng-dblclick=\"grid.appScope.onDblClick(row)\" ng-repeat=\"(colRenderIndex, col) in colContainer.renderedColumns track by col.colDef.name\" class=\"ui-grid-cell\" ng-class=\"{ 'ui-grid-row-header-cell': col.isRowHeader }\" ui-grid-cell></div>",//双击行事件  
  28.                 enableFooterTotalSelected: true, // 是否显示选中的总数,default为true,如果显示,showGridFooter 必须为true  
  29.                 enableFullRowSelection : true, //是否点击行任意位置后选中,default为false,当为true时,checkbox可以显示但是不可选中  
  30.                 enableRowHeaderSelection : true, //是否显示选中checkbox框 ,default为true  
  31.                 enableRowSelection : true, // 行选择是否可用,default为true;  
  32.                 enableSelectAll : true, // 选择所有checkbox是否可用,default为true;   
  33.                 enableSelectionBatchEvent : true, //default为true  
  34.                 modifierKeysToMultiSelect: false ,//default为false,为true时只能按ctrl或shift键进行多选,这个时候multiSelect必须为true;  
  35.                 multiSelect: true ,// 是否可以选择多个,默认为true;  
  36.                 noUnselect: false,//default为false,选中后是否可以取消选中  
  37.                 selectionRowHeaderWidth:30 ,//default为30,设置选择列的宽度  
  38.                 //api   
  39.                 onRegisterApi : function (gridApi) {  
  40.                     $scope.gridApi = gridApi;  
  41.                     $scope.gridApi.edit.on.afterCellEdit($scope,function(rowEntity){  
  42.                         //编辑离开事件  
  43.                     });  
  44.                       
  45.                     $scope.gridApi.selection.on.rowSelectionChanged($scope,function(row,event){  
  46.                        //行选中事件  
  47.                      });  
  48.                 },  
  49.                  
  50.                 //导出(只支持csv,扩展性不太好)  
  51.                 exporterAllDataFn: function(){//导出全部  
  52.                        return getAllData();  
  53.                 },  
  54.                 exporterCsvColumnSeparator: ',',  
  55.                 exporterCsvFilename:'testdown.csv',  
  56.                 exporterFieldCallback : function ( grid, row, col, value ){//导出回调可以过滤条件  
  57.                   
  58.                     return value;  
  59.                 },  
  60.                 exporterHeaderFilterUseName : true,  
  61.                 exporterMenuCsv : true,  
  62.                 exporterMenuLabel : "Export",  
  63.                 exporterMenuPdf : true,  
  64.                 exporterOlderExcelCompatibility : false,//是否兼容低版本excel  
  65.                 exporterPdfCustomFormatter : function ( docDefinition ) {  
  66.                  docDefinition.styles.footerStyle = { bold: true, fontSize: 10 };  
  67.                  return docDefinition;  
  68.                 },  
  69.                 exporterPdfFooter :{   
  70.                                      text: '',   
  71.                                      style: ''   
  72.                                    },  
  73.                 exporterPdfDefaultStyle : {  
  74.                   fontSize: 11,font:'simblack' //font 设置自定义字体  
  75.                 },  
  76.                 exporterPdfFilename:'testdown.pdf',  
  77.                 exporterPdfFooter: function(currentPage, pageCount) {   
  78.                        return currentPage.toString() + ' of ' + pageCount;   
  79.                 },  
  80.                 exporterPdfHeader : function(currentPage, pageCount) {   
  81.                    return currentPage.toString() + ' of ' + pageCount;   
  82.                 },  
  83.                 exporterPdfMaxGridWidth : 720,  
  84.                 exporterPdfOrientation : 'landscape',//  'landscape' 或 'portrait' pdf横向或纵向  
  85.                 exporterPdfPageSize : 'A4',// 'A4' or 'LETTER'   
  86.                 exporterPdfTableHeaderStyle : {  
  87.                  bold: true,  
  88.                  fontSize: 12,  
  89.                  color: 'black'  
  90.                 },  
  91.                 exporterPdfTableLayout : null,  
  92.                 exporterPdfTableStyle: {  
  93.                  margin: [0, 5, 0, 15]  
  94.                 },  
  95.                 exporterSuppressColumns : ['name'],//过滤不需要的列  
  96.                 exporterSuppressMenu: false,  
  97.                 //列属性设置  
  98.                  columnDefs: [{   field: 'name',   
  99.                                  displayName: '名字',   
  100.                                  width: '100', //宽度设置  
  101.                                  enableColumnMenu: false,// 是否显示列头部菜单按钮  
  102.                                  //enableHiding: false,  
  103.                                  //suppressRemoveSort: true,  
  104.                                  enableCellEdit: false, // 是否可编辑  
  105.                                  cellEditableCondition:function($scope){  
  106.                                     return boolean;//是否编辑控制  
  107.                                  },  
  108.                                  visible:true,是否显示default为true,  
  109.                                  cellTemplate : '<a href="" ng-click="grid.appScope.viewPages(row.entity);">{{row.entity.name==1?"重写":""}}</a>',//重写cell  
  110.                                  cellClass: function(grid, row, col, rowRenderIndex, colRenderIndex) {  
  111.                                   //做一些判断。。。  
  112.                                   return 'red'//自定义样式   
  113.                                 },  
  114.                                  //cell下拉  
  115.                                  editableCellTemplate: 'ui-grid/dropdownEditor',  
  116.                                  editDropdownOptionsArray: [],//[{name:1,nameText:'Yoko'}]  
  117.                                  editDropdownIdLabel: 'name',//id  
  118.                                  editDropdownValueLabel: 'nameText',//显示的名字  
  119.                                    
  120.                                  cellFilter:"nameFilet"//过滤器  
  121.                              }  
  122.                                
  123.                             ],  
  124.             };  
  125.           var myData=[{name:''}];  
  126.         });  




用到的自定义指令:
[javascript]  view plain  copy
  1. .directive('dblClickRow', ['$compile', '$parse', function($compile, $parse) {  
  2.           return {  
  3.             priority : -190, // run after default uiGridCell directive  
  4.             restrict : 'A',  
  5.             scope : false,  
  6.   
  7.             compile: function($element, attr) {  
  8.   
  9.                 // Get the function at ng-dblclick for ui-grid  
  10.                 var fn = $parse(attr['ngDblclick'], /* interceptorFn */ null, /* expensiveChecks */ true);  
  11.   
  12.                 return function ngEventHandler(scope, element) {  
  13.   
  14.                     element.on('dblclick', function(event) {  
  15.   
  16.                       var callback = function() {  
  17.   
  18.                         if ($scope.gridApi.grid.selection.lastSelectedRow)  
  19.                         {  
  20.                             fn($scope, {$event:event, row: $scope.gridApi.grid.selection.lastSelectedRow.entity });  
  21.                         }  
  22.                       };  
  23.   
  24.                       $scope.$apply(callback);  
  25.   
  26.                     }  
  27.                 )};  
  28.   
  29.             }  
  30.   
  31.             };  
  32.         } ])  


ui-grid  api:http://ui-grid.info/docs/#/api/
【C语言学习疑难杂症】第20期:0x00007FF7F2821964处引发的异常0xC0000005写入位置 0x0000000000000 检查代码中是否存在野指针访问的情况,确保在进行写入操作之前,内存已经被正确分配或初始化,并且在使用完毕后进行了正确的释放。空指针访问:代码尝试在空指针地址(0x0000000000000000)处进行写入操作,导致访问冲突。检查代码中是否存在数组越界的情况,确保在进行写入操作之前,数组的索引值在合法范围内。检查代码中是否存在空指针访问的情况,确保在进行写入操作之前,指针已经被正确初始化。野指针访问:代码尝试在已释放或未初始化的内存地址进行写入操作,导致访问冲突。 阅读详情

相关推荐

从流量到凭证:实战解析SMB协议中的NTLMv2/v1哈希提取与破解

本文详细解析了SMB协议中NTLMv2/v1哈希的提取与破解实战技巧。从流量捕获、哈希格式处理到Hashcat高效破解,提供了一套完整的操作指南。文章特别强调了NTLMv2和NTLMv1哈希的区别及处理要点,并分享了防护建议与检测方法,帮助安全人员提升渗透测试效率。

weixin_30642561的博客 116

Angularjs UI-Grid 超详细

了解 Angularjs UI-Grid 起因:项目需要一个可以固定列和表头的表格,因为表格要显示很多列,当水平滚动条拉至后边时可能无法看到前边的某些信息。 以前在angularjs 1.x 中一直都是直接 ng-repeat去完成一个table,显示上没有太多要求,此时遇到这个需求 ,时间上又无法允许你去思考实现之法,而且angularjs 去实现一个像这样的指令也并不容易,于是便要去寻找一...

新手12138号的博客 8397

电力电子技术进阶:从基础到实战的完整学习路径

本文系统阐述了电力电子技术从基础到实战的完整学习路径。首先解析了电力电子作为“电能魔术师”的核心作用,随后深入剖析了数学工具、电路电磁场与半导体器件三大基础支柱。文章重点讲解了DC-DC、DC-AC、AC-DC等核心变换拓扑,并探讨了从经典PID到现代模型预测控制(MPC)的控制策略。最后,分享了硬件设计、软件调试、电磁兼容(EMC)等实战经验与前沿趋势,为学习者提供了清晰的进阶指南。

weixin_29204205的博客 447

[AngularJS] 插件ui-grid使用说明

基础指令 ui-grid-edit: 编辑表格; ui-gird-pagination : 分页指令; ui-grid-selection : 选择行; ui-grid-exporter : 导出; ui-grid-resize-columns: 列宽拉伸指令; ui-grid-auto-resize : 解决grid布局 自动适应div 高度和宽度问题(非常有用); JS参数 enableS...

优雅的博客 5882

UWB定位原理详细介绍

Hello大家好我是小智,今天我来给大家介绍下超宽带的定位原理,首先我们来讲下什么是UWB技术。 超宽带(Ultra Wide Band)简称UWB,和我们熟悉的WIFI、蓝牙技术一样属于通信技术的一种,UWB是一种无线载波通信技术,它不采用正弦载波,而是利用纳秒级的非正弦波窄脉冲传输数据,其所占的频谱范围很宽,右图是一种典型的正弦载波信号图。 UWB这种技术有什么特点呢? UWB系统结构实现简单;2.具有高速的数据传输能力;3.功耗低;4.安全性高;5.多径分辨能力强;6.可用于精确定位等特点。 UWB.

qq_35699674的博客 2万+

RiscV运行zephyr和Linux的方法

riscv基金会搞了一个网站,用于介绍如何使用riscv指令集进行开发。 对于运行zephyr和linux以及Qemu有非常大的帮助。 可以作为riscv开发的相关参考。 RISC-V - Getting Started Guide — RISC-V - Getting Started Guidehttps://risc-v-getting-started-guide.readthedocs.io/en/latest/index.html RISC-V - Getting Started Gu.

闲人的专栏 737

【AngularJs】ui-grid 使用详解

在ui-grid 导出pdf 时可能会出现中文字符无法显示问题,解决方法看这篇博客: http://my.oschina.net/gmd/blog/714911   html代码: html ng-app="myApp">       head>         meta charset="utf-8">         title>ui-Grid Example01title>     

月 2万+

V90伺服 EPOS模式下回原(详细配置+SCL源代码)

/ 输出上限 100.0%rSetPoint : Real;// 设置目标值工程量。// 通道转换参考值。Td : Real;

RXXW_Dor的博客 2665

终极指南:如何快速掌握 Angular UI Grid 数据表格组件

Angular UI Grid 是一个功能强大的 AngularJS 数据表格组件,专为处理大量数据而设计。这个开源项目提供了丰富的功能特性,包括排序、过滤、编辑、导出等,能够满足企业级应用的各种需求。无论你是初学者还是经验丰富的开发者,本指南都将帮助你快速上手并解决常见问题。 ## 🚀 快速入门:5分钟安装配置 **一键安装步骤**:通过 Bower 或 NPM 都可以轻松安装 UI Gr

gitblog_00137的博客 671

uniapp [安卓苹果App端] - 实现集成微信一键登录及授权获取用户信息全流程源码,uniApp唤起微信客户端app实现微信授权头像昵称手机号(提供移动应用/开放平台/资质认证/签名/权限申请

uni-app,安卓Android,苹果ios,安卓app端,苹果App端,uniapp苹果安卓app,微信一键登录,uniapp项目App端实现微信登录,Uniapp实现微信授权登录,调起微信客户端授权用户信息,uniappapp端微信一键登录打开手机微信app,app端如何唤起用户本机微信应用并授权登陆,如何申请微信一键登录,uniapp实现APP微信登录流程,打开本地微信软件,接入微信登录,UniApp实现微信登录教程,获取头像昵称手机号用户数据,超详细实现微信登录功能,唤起没反应,授权失败,获取

🏆 前端领域优质创作者 1万+

36、R语言中的回归模型与机器学习算法

本文介绍了R语言中多种回归模型和机器学习算法,包括Cox回归模型、数据平滑方法(如样条函数、多项式曲面拟合和核平滑)以及回归树模型等。重点讲解了这些方法的实现函数、参数说明以及实际应用示例,如使用`coxph`进行生存分析、使用`spline`和`smooth.spline`进行数据平滑处理、使用`loess`和`locpoly`进行非参数回归分析,以及使用`rpart`构建和可视化回归树。此外,还涉及了模型评估与优化策略,如数据拆分、交叉验证和树的修剪。通过这些方法,可以更好地处理复杂数据集并提升模型性能

yhn456789的博客 122

angularJs结合ui-grid做成的表格实例

因为项目的angular.js版本比较老,1.3.X版的,并且最开始的ui-grid版本也比较低,3.0.0版的,所以也不方便去找其他的表格插件,就用这个ui-grid 亲测有效。 ① 先在主页面引入ui-grid的js和css ② 在app.js页面引入ui-grid模块,用什么引什么,不用的功能不需要引 var app = angular.module('appModel',[ ......

qq_43437571的博客 1670

Python爬虫实战:如何从Google Maps和OpenStreetMap抓取地理坐标数据

地点名称:地理位置的名称或地址。地理坐标:经度和纬度。类别信息:比如餐馆、商店、公园等。评论数据:如果可用,获取用户评论。本文介绍了如何使用Python爬虫从Google Maps和OpenStreetMap抓取地理坐标数据,并展示了如何存储和分析这些数据。通过实际的代码示例,您可以学习到如何处理不同类型的地图数据抓取任务,以及如何应对反爬虫机制。掌握这些技术后,您可以进行更广泛的地理数据分析,提供更有价值的地理信息服务。

2201_76125261的博客 1041

AngularJs整合ui-bootstrap以及ui-grid

1.ui-bootstrap 参考博客:http://www.cnblogs.com/pilixiami/p/5597634.html (这篇博客写的非常不错,值得推荐) angular-ui-bootstrap的github地址:http://angular-ui.github.io/bootstrap/ 最新的angular-ui-bootstrap版本地址:https://...

weixin_30530523的博客 792

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

[转]angularjs之ui-grid 使用详解

本文转自:http://blog.youkuaiyun.com/qhkabuqiluo/article/details/52237710 最近一段时间在使用angularjs 然后就找到ui-grid 这个比较不错的表格插件,感觉还不错,所以分享给大家(ps:新手第一次发) html: [html] view plain copy print? &lt;pre name="code" ...

weixin_33813128的博客 236

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

angularjs ui-grid 导出表格数据csvExport

ui-grid是angularjs常用的表格插件,不仅可以显示表格数据,还提供了很多其他可选的操作功能。 如果想详细了解ui-gird,附上官网地址,上面也有很多详细的例子:http://ui-grid.info/ 这篇重点讲一下怎样导出ui-grid表格中数据,将数据以.csv文件形式导出。 ui-grid基本用法如下: html: [html] v

u013758456的专栏 2172

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

Angularjs之ui-grid的使用鼠标滚轮滚动的Bug

Angularjs之ui-grid的使用鼠标滚轮滚动的Bug 在UI-Grid表格中使用鼠标左键进行拖拽滚动时,表格是滚动正常的;但使用滚轮进行上下滚动时,发现它总会自动跳回到表格顶部,解决方法是在源码中找到gridUtil.on.mousewheel这句代码,在里面直接return掉,不让它往下运行。这样你的滚动就能使用了。 解决方法参考自:https://blog.youkuaiyun.com/qq_2...

nunumaymax的博客 645

对于angularjs 的ui-grid 分页条数不正确的修改

angularjs 的ui-grid分页多少页-多少页这个总是显示不正确 比如1-10行,他就显示1-11行 对这个问题,我修改了ui-grid.js中第28872行,也就是这句{{ 1 + paginationApi.getFirstRowIndex() }} - {{1+ paginationApi.getLastRowIndex() }} {{paginationOf}} {{grid.

chaoyue1397的博客 1274

angularjs UI grid - assign columns and data dynamically

I am trying to add columns dynamically to the ui-grid and also assigning the data. First time, the grid is working good. But, when i try to change the columns and data dynamically, it is not working as

AI时代光年 832

AngularJS的ui-grid的列表数据实现换行

在公共css中添加如下: .ui-grid-cell-contents-break { padding: 5px; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; overflow: hidden; height: 100%; word-break: break-all; } angularJS代码 { na

鸟不拉诗 753

AngularJS—ui-grid 使用讲解

在ui-grid 导出pdf 时可能会出现中文字符无法显示问题,解决方法看这篇博客:http://my.oschina.net/gmd/blog/714911html代码:<html ng-app="myApp"> <head> <meta charset="utf-8"> <title>ui-Grid Example01</title>

此博客已停用,博文会逐渐转移到新地址,http://blog.youkuaiyun.com/liupeifeng3514 1205

angularjs pdf插件_Angularjs ui-grid pdfmake.js 导出excel/pdf及pdf中文问题

一. 处理Angularjs ui-grid 导出pdf 无法显示中文问题:第一步:pdfmake 自定义支持中文的字体需要下载node.js,然后下载bower,然后下载这个pdfmake的zip并解压,再安装grunt,在pdfmake这个目录下执行grunt dump_dir命令,但是你会发现缺少各种grunt插件,然后你要一个一个安装grunt插件。最后把你想要的支持中文的ttf文件放到p...

weixin_39841572的博客 276

ui-grid angularjs

<pre name="code" class="html"><!--ui-grid css--> <link rel="stylesheet" type="text/css" href="../lib/angular-ui/ui-grid/ui-grid.min.css"> <div class="gridStyle" ui-gr...

diloujing4123的博客 261

在项目中使用AngularJS+UI-Grid

一、效果图     二、简单的需求 使用UI-Grid来显示表格使用infiniteScroll来进行滚动加载,参考文档 三、前端JS /* * Copyright (c) 2013-2015 by The SeedStack authors. All rights reserved. * * This file is part of SeedStack, An

欲望以提升热忱 毅力以磨平高山 1万+
上一篇: 原生ajax请求与Promise请求
下一篇: Javascript闭包入门(译文)
SunsCheung
博客等级 码龄11年 30粉丝 27原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值