html片段

  1. <table id="menuview" style="width:100%">
  2. <thead>
  3. <tr>
  4. <th field="ID0" width="5%" fixed="true" checkbox="true"></th>
  5. <th field="TOPIC" width="30%" fixed="true" editor="{type:'validatebox',options:{required:true,missingMessage:'目录名称不能为空。',height:'100px'}}">目录名称</th>
  6. <th field="WJBH" width="10%" fixed="true" editor="text">文件编号</th>
  7. <th field="ARCHUSER" width="10%" fixed="true" editor="text">责任者</th>
  8. <th field="PAGECOUNT" width="5%" fixed="true" editor="numberbox">页数</th>
  9. <th field="YH" width="5%" fixed="true" editor="text">页号</th>
  10. <th field="RQ" width="10%" fixed="true" editor="{ type:'datebox',options:{editable:false}}">日期</th>
  11. <th field="ISSCJNML" width="10%" fixed="true" editor="{ type:'checkbox',options:{on: 1,off:0}}" align="center" formatter="rowCheckBoxFormater">是否生成件内目录</th>
  12. <th field="BZ" width="15%" fixed="true" editor="text">备注</th>
  13. </tr>
  14. </thead>
  15. </table>

javascript 片段

  1. $('#menuview').edatagrid({
  2. idField: 'ID0',//主键
  3. rownumbers: true,//序号
  4. pagination: false,//是否分类
  5. fitColumns: true,//配合列拖动时,禁止列自适应宽度
  6. singleSelect: false, //是否单选,
  7. url: "GetCatalogNew?ARCHGID=" + vARCHGID + "&ISSJ=" + vISSJ,//获取数据url
  8. pageSize: 15,//分页配置
  9. pageList: [15, 30, 45, 60],//分页配置
  10. toolbar: '#tb',//工具
  11. autoSave: false,//是否自动报错
  12. selectOnCheck: true,
  13. checkOnSelect: false,
  14. saveUrl: "CatalogAddYY?ISSJ=" + vISSJ, //新建,都是eadatagrid封装好的,把链接填好就行,点击之后会自动发送json数据包
  15. updateUrl: "CatalogAddYY?ISSJ=" + vISSJ, //保存
  16. destroyUrl: "CatalogAddYY?ISSJ=" + vISSJ, //删除
  17. destroyMsg: {
  18. norecord: { // 在没有记录选择的时候执行
  19. title: '警告',
  20. msg: '没有要删除的记录。'
  21. },
  22. confirm: { // 在选择一行的时候执行
  23. title: '确认',
  24. msg: '您确定要删除吗?'
  25. }
  26. },
  27. onBeforeLoad: function (param) {
  28. },
  29. onLoadSuccess: function (data) {
  30. $(this).datagrid('enableDnd');
  31. },
  32. onLoadError: function () {
  33. },
  34. onDestroy: function (index, row) {
  35. },
  36. onAdd: function (index, row) {
  37. row.ARCHGID = vARCHGID;
  38. },
  39. onBeforeSave: function (index) {
  40. return true;
  41. },
  42. onSave: function (index, row) {
  43. var $datagrid = $('#menuview');
  44. if ($datagrid.data('isSave')) {
  45. //如果需要刷新,保存完后刷新
  46. $datagrid.edatagrid('reload');
  47. $datagrid.removeData('isSave');
  48. }
  49. },
  50. onBeforeDrag: function (row) {
  51. var vSelectRowIndex = $('#menuview').datagrid('getRowIndex', row);//获取选择行索引
  52. var vEditRowIndex = $('#menuview').datagrid('getEditingRowIndexs')//获取编辑行索引
  53. if (vSelectRowIndex == vEditRowIndex) { //防止 编辑行拖动bug
  54. return false;
  55. }
  56. },
  57. //拖拽某行到指定位置后触发
  58. onDrop: function (targetRow, sourceRow, point) {
  59. //获取拖拽后的数据行
  60. var rows = $('#menuview').edatagrid("getRows");
  61. var id0 = "";
  62. var vLength = rows.length;
  63. for (var i = 0; i < vLength; i++) {
  64. id0 += rows[i].ID0 + ",";
  65. }
  66. MaskUtil.mask();
  67. $.post("UpFileOrder?ID0=" + id0 + "&ISSJ=" + vISSJ, function (response) {
  68. $('#menuview').edatagrid("reload");
  69. MaskUtil.unmask();
  70. });
  71. },
  72. toolbar: [{
  73. text: '增加',
  74. iconCls: 'icon-add',
  75. handler: function () {
  76. $('#menuview').edatagrid('addRow');
  77. }
  78. }, {
  79. text: '保存',
  80. iconCls: 'icon-save',
  81. handler: function () {
  82. //标记需要刷新
  83. $('#menuview').data('isSave', true).edatagrid('saveRow');
  84. }
  85. }, {
  86. text: '合并',
  87. iconCls: 'icon-save',
  88. handler: function () {
  89. //标记需要刷新
  90. $('#menuview').data('isSave', true).edatagrid('saveRow');
  91. }
  92. }, {
  93. text: '分割',
  94. iconCls: 'icon-save',
  95. handler: function () {
  96. //标记需要刷新
  97. $('#menuview').data('isSave', true).edatagrid('saveRow');
  98. }
  99. }, '-',
  100.  
  101. '-', {
  102. text: '删除',
  103. iconCls: 'icon-save',
  104. handler: function () {
  105. delData();
  106. }
  107. }, {
  108. text: '刷新',
  109. iconCls: 'icon-reload',
  110. handler: function () {
  111. $('#menuview').edatagrid('reload');
  112. }
  113. }]
  114. });
  115. });
  116. /*
  117. * datagrid 获取正在编辑状态的行,使用如下:
  118. * $('#id').datagrid('getEditingRowIndexs'); //获取当前datagrid中在编辑状态的行编号列表
  119. */
  120. $.extend($.fn.datagrid.methods, {
  121. getEditingRowIndexs: function (jq) {
  122. var rows = $.data(jq[0], "datagrid").panel.find('.datagrid-row-editing');
  123. var indexs = [];
  124. rows.each(function (i, row) {
  125. var index = row.sectionRowIndex;
  126. if (indexs.indexOf(index) == -1) {
  127. indexs.push(index);
  128. }
  129. });
  130. return indexs;
  131. }
  132. });

EasyUI edatagrid插件使用小计的更多相关文章

  1. e3mall商城总结12之购物车的实现、以及购物车小计问题、json406报错

    说在前面的话 1.本节主要讲了e3mall购物车的实现方法,我搭建的项目和系统购物车有一些区别,因此这里需要说一下.系统搭建的项目在未登陆的情况下也可以通过cookie进行加入购物车,当用户要下单的时 ...

  2. SQLSERVER 使用 ROLLUP 汇总数据,实现分组统计,合计,小计

    表结构: CREATE TABLE [dbo].[Students]( ,) NOT NULL, ) NULL, [Sex] [int] NOT NULL, ) NULL, ) NULL, , ) N ...

  3. PB gird类型数据窗口 设置分组、分组小计、合计

    今天遇到一个需求,gird表格数据如下:  部门  类型 数据   A  类型1  1  A  类型2  2  B  类型1  3  B  类型2  4   合计 10 实际需要显示的结果为:  部门 ...

  4. 简单的angular购物车商品小计

    <!DOCTYPE html> <html lang="en" ng-app="shopApp"> <head> <m ...

  5. C#给DataTable添加序号、C#给DataTable添加合计、小计

    /// <summary>        /// 给DataTable添加序号        /// </summary>        /// <param name= ...

  6. 使用EasyUI的插件前需要引入的文件

    一.使用EasyUI的插件需要引入一些文件 1.引入相关文件 easyui.css: easyUi的样式文件 icon.css:easyUI的图标样式文件 easyui.min.js:easyUi的类 ...

  7. SAP ALV中同一列的不同行显示不同的小数位,并能够总计,小计

    物料数量字段,根据物料类型的不同,来显示不同的小数位:要求有点苛刻: 首先,要能够总计和小计的话,这一列的字段类型必须是数值类型. 这样的话,就不能通过截取的方式改变不同行的小数位. 以下是两种思路: ...

  8. 每日学习心得:SQL查询表的行列转换/小计/统计(with rollup,with cube,pivot解析)

    2013-8-20 1.    SQL查询表的行列转换/小计/统计(with  rollup,with cube,pivot解析) 在实际的项目开发中有很多项目都会有报表模块,今天就通过一个小的SQL ...

  9. VMProtect使用小计【一】

    文章列表 VMProtect使用小计[一] – 初次使用VMProtect使用小计[二] – 加壳查看VMProtect使用小计[三] – 权限管理 说明 VMProtect的功能我就不说了,详情大家 ...

随机推荐

  1. Linux中的mysql.redis

    1,Linux上的mysql MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可. 开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源 ...

  2. Django模板语言(一)

    1,Django模板语言 1.1>基础语法:1.1.1,变量相关:{{ 变量名 }},1.1.2,逻辑相关{% ... %} 在Django模板语言中按此语法使用:{{ 变量名 }},当模板引擎 ...

  3. Hadoop Hive概念学习系列之hive里的索引(十三)

    Hive支持索引,但是Hive的索引与关系型数据库中的索引并不相同,比如,Hive不支持主键或者外键. Hive索引可以建立在表中的某些列上,以提升一些操作的效率,例如减少MapReduce任务中需要 ...

  4. mysql连接com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link

    jdbc驱动:mysql-connector-java-5.1.39-bin.jar 这个有问题, 换成:mysql-connector-java-5.1.34.jar 就可以了

  5. YTU 2440: C++习题 复数类--重载运算符+,-,*,/

    2440: C++习题 复数类--重载运算符+,-,*,/ 时间限制: 1 Sec  内存限制: 128 MB 提交: 1189  解决: 774 题目描述 定义一个复数类Complex,重载运算符& ...

  6. django flask缓存memcache的key生成方法介绍

    去年的一个django项目中,使用了memcache作为系统缓存,并实现多台机器上的缓存共享.配置的cache如下图所示: 最近在项目调试过程中,发现memcache在进行缓存时,使用的key并不是实 ...

  7. bzoj 3232 圈地游戏 —— 01分数规划+最小割建图(最大权闭合子图)

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3232 心烦意乱的时候调这道题真是...越调越气,就这样过了一晚上... 今天再认真看看,找出 ...

  8. gerrit调试

  9. bzoj 4519: [Cqoi2016]不同的最小割【最小割树Gomory–Hu tree】

    算法详见:http://www.cnblogs.com/lokiii/p/8191573.html 求出点两两之间的最小割之后,把他们扔到map/set里跑即可 可怕的是map和set跑的时间竟然完全 ...

  10. XML(php中获取xml文件的方式/ajax获取xml格式的响应数据的方式)

    1.XML 格式规范: ① 必须有一个根元素 ② 不可有空格.不可以数字或.开头.大小写敏感 ③ 不可交叉嵌套 ④ 属性双引号(浏览器自动修正成双引号了) ⑤ 特殊符号要使用实体 ⑥ 注释和HTML一 ...