当前页列合计
 
 js代码如下:
 

 ...
footerrow: true,
gridComplete: function () {
var rowNum = parseInt($(this).getGridParam('records'), 10);
if (rowNum > 0) {
$(".ui-jqgrid-sdiv").show();
var Hits = jQuery(this).getCol('Hits', false, 'sum');
$(this).footerData("set", { "Source": "<font color='red'>当前页点击合计<font>", "Hits": "<font color='red'>" + Hits + "<font>"});
} else {
$(".ui-jqgrid-sdiv").hide();
}
},
userDataOnFooter: true,
...
 设置footerrow: true,userDataOnFooter: true,在gridComplete中用jQuery(this).getCol('Hits', false, 'sum')计算合计就行,"Hits"表示要合计的列。
 
 
总列合计
 
实现方法可以在后台计算好后传到前台,这是最简单的做法。
 
本次介绍是修改"jqGrid.js"文件,让其直接支持getGridParam('新添加的属性名')方法,这样在其他列表中也可以直接使用了。
 
由于是直接是生产环境,就直接对"jqGrid.min.js"改动如下:
 
     1.在 d.p.records = y($.jgrid.getAccessor(a, g.records))后添加 d.p.totalSum = y($.jgrid.getAccessor(a, g.totalSum))。
     2.在 d.p.jsonReader = $.extend(!0, { root: "rows", page: "page", total: "total", 后添加 totalSum: "totalSum"。
     3.在 d.p.localReader = $.extend(!0, { root: "rows", page: "page", total: "total", 后添加 totalSum: "totalSum " 。
 
 
 具体做法是在后台给jqGrid对象增加一个某列合计的属性,再在前台直接通过$(this).getGridParam('新添加的属性名')取出,代码示例如下:
 
  ArtJqGridResult<ExtArticle> jqGridPage = new ArtJqGridResult<ExtArticle>();
jqGridPage.page = pageIndex;
jqGridPage.records = totalRecord;
jqGridPage.rows = userlist;
jqGridPage.pageSize = pageSize;
jqGridPage.totalSum = hitsSum;
return Json(jqGridPage, JsonRequestBehavior.AllowGet);
前台在GridComplete中通过parseInt($(this).getGridParam('totalSum'))取出就行。
 
代码如下:
 

...
gridComplete: function () {
var rowNum = parseInt($(this).getGridParam('records'), 10);
if (rowNum > 0) {
$(".ui-jqgrid-sdiv").show();
var Hits = jQuery(this).getCol('Hits', false, 'sum');
var hitsSum = parseInt($(this).getGridParam('totalSum'));
$(this).footerData("set", { "Source": "<font color='red'>当前页点击合计<font>", "Hits": "<font color='red'>" + Hits + "<font>", "CreateUser": "<font color='red'>总点击合计<font>", "CreateDate": "<font color='red'>" + hitsSum + "<font>" });
} else {
$(".ui-jqgrid-sdiv").hide();
}
},
...
效果图:
 
 

jqGrid实现当前页列合计与总计的更多相关文章

  1. jqgrid 设置冻结列

    有时,jqgrid表格的列非常多,而表格的宽度值是固定的,我们需要在表格底部出现滚动条,并且固定前面几个列作为数据参照项,如何实现? 需要用的jqgrid冻结列,步骤如下: 1)设置需要冻结的列属性, ...

  2. 前端表格选中列合计,select-chosen,set集合,display隐藏

    业务涉及到table选中列合计,同时隐藏未选中列.为了减少后端请求数据,前端获得所有数据后筛选计算. 1.select下拉框初始化 $(function() { $('.chosen-select') ...

  3. jqGrid动态增加列,使用在根据条件筛选而出现不同的列的场景

    function GetGrid2() { var jqdata = [ { Encode:"20180100", FullName: "BYD", SpecT ...

  4. JqGrid自定义的列

    $("#gridTable").jqGrid({ //...其它属性 colModel: [ //...其它列 { name: 'dsource_alarm', index: 'd ...

  5. jqgrid 中设置列不排序

    背景 今天在做系统的功能时,当时有这么个需求:在添加了一行数据时,原本的排序的自动就不能再排序,也就是排序失效. 1. 使用onSortCol事件禁止排序列 当时使用了初始化时,使用onSortCol ...

  6. devexpress表格gridcontrol实现列统计,总计,平均,求和等。

    1.在许多项目中,经常要实现对某些列的统计.devexpress控件gridcontrol实现这些功能只需要设置某些属性,就可以达到要求了.以下例举了一个统计班级总数,人数总计,分数总计的案例.效果图 ...

  7. 前端基于JQgrid实现自定义列头展示

    先上效果图   因为公司项目的需要,并且公司只有我这一个能写js的前端,这个自定义展示jqgrid列选项的需求依然是交由我写,辣么就分享一下我的工作成果. //初始化函数 multiSelectCol ...

  8. jqgrid 点击列头的超链接或按钮时,不触发列排序事件

    接上篇文章:jqgrid 将列头设置为超链接或按钮 如果在列头设置了超链接或按钮,在点击超链接或按钮时会触发列的排序事件. 原由:点击超链接/按钮会触发排序的冒泡事件 解决方法:点击超链接/按钮时,阻 ...

  9. jqgrid 主键列的设定

    1.如果需要对jqgrid表格数据有互动操作,需要设定主键列. 2.主键列的作用为:在进行jqgrid表格数据交互(编辑.新增.删除行)时,是通过主键列的值来作为引导值来的. 3.注意:不要给一个jq ...

随机推荐

  1. git 笔记

    查看某个提交的修改:git show commitID 查看某个提交修改涉及的文件:git show commitID --oneline --name-status 清理掉没有入库的文件,并把修改了 ...

  2. MMC不能打开文件D:\Program Files\Microsoft SQL Server\80\Tools\BINN\SQL Server Enterprise Manager.MSC

    以上问题的解决方式如下: 1. 打开windows运行对话框.在对话框输入mmc.打开了如图所示的控制台. 2. 文件---添加/删除管理单元(M). 3. 添加.然后选择Microsoft SQL ...

  3. 天气预报API(三):免费接口测试(“旧编码”)

    说明 我以参考文章为引子,自己测试并扩展,努力寻找更多的气象API... 本文所有测试均以青岛为例. 本文所列接口城市代码(cityid)参数都使用的 "旧编码": 全国城市代码列 ...

  4. firefox的plugin-container进程关闭方法

        http://kb.mozillazine.org/Plugin-container_and_out-of-process_plugins   Disabling crash protecti ...

  5. sqlserver的IO性能检查

    这一个月老被一个信息科科长纠缠,原因就是他们的sql server 2008 R2老是定期的写入性能低下.我是这样认为的,但身边的人似乎都不这么想.每每我对那个挂在一个交换机上的网络存储表达担忧时,这 ...

  6. 使用OFBIZ 时,使用的键入提示。

    对商品的键入提示 ,效果如图(当输入关键字时,会提示出相应的数据) 首先要引入相应的插件 页面字段 js方法

  7. jQqery EasyUI dategrid行中多列数据的可编辑操作

    最近的项目中需要在前台dategrid列表中直接修改某些列的数据,并且修改后的数据需要不通过后台而自动更新在列表中. 带着这一问题开始寻找实现的思路,首先想到的就是去jQqery EasyUI官网找例 ...

  8. form表单回车提交

    当form中只有一个input[type="text"](其他的表单元素可以随意有)的输入框时候,当input[type="text"]获得焦点的时候,无论表单 ...

  9. [XAF] How to represent an enumeration property via a drop-down box with check boxes

    https://www.devexpress.com/Support/Center/Example/Details/E689

  10. 纯练手设置ip地址脚本

    #!/bin/bash IFO() { read -p "Configure $line Network card ( 'yes'or'no' )?" CDN </dev/t ...