当前页列合计
 
 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. iOS 报错 :Duplicate interface definition for class’*'

    这个是重复导入引起的,但是一般的重复导入会在C里的include.而在项目中我们移动项目的位置,比如从某一文件夹移到另一文件夹,路径改变的话会导致项目的中预编译文件PrefixHeader.pch的路 ...

  2. Java多线程理解

    首先说一下进程和线程的区别 进程:是计算机运用程序实例,拥有独立的内存空间和数据(猜测内存堆应该是作用的进程上),一个进程包含多个子线程,不同进程相互独立: 线程:cpu执行的基本单位,拥有独立的寄存 ...

  3. 一些IOS开发中的小技巧

    1.打包后提交报错误 错误信息:ERROR ITMS-90035: "Invalid Signature. Code object is not signed at all. The bin ...

  4. arch下的启动问题解决

    1.不知什么时候开始关机的时候会看到一串红色的文字 [lun. avril 20 09:15:34 2015] [drm:intel_uncore_check_errors [i915]] *ERRO ...

  5. Struts2中获取servlet API的几种方式

    struts2是一个全新的MVC框架,如今被广大的企业和开发者所使用,它的功能非常强大.这给我们在使用servlet 纯java代码写项目的时候带来了福音.但是一般来说,我们的项目不到一定规模并不需要 ...

  6. javascript event兼容性随笔

    一.前言 function ConvertEvent(e, element) { var event = e || window.event; var resultEvent = { event: e ...

  7. PowerShell笔记

    教程: http://www.pstips.net/powershell-online-tutorials/ http://www.3fwork.com/a113/ 1. 查看成员 $MyInvoca ...

  8. Controller的生命周期是Transient还是PerWebRequest?

    当我们用在MVC总使用IoC时,大家的Controller生命周期(lifestyle)是以哪种方式注册的呢? 之前我一直没有思考过这个问题.众所周知在MVC开发过程中,大部分的组件都是以PerWeb ...

  9. kali 在线教学群 第一次 公开课 小结(1)

    kali 在线教学群 第一次 公开课 小结(1) 文/玄魂 1.1 需要准备的基础环境 vmware 虚拟机,kali 2.0 镜像,科学上网工具包.这三项内容,可以在本人的微信订阅号“xuanhun ...

  10. 一步一步跟我学DeviceOne开发 - 仿微信应用(一,二,三)

    这是一个系列的文档,长期目标是利用DeviceOne开发一些目前使用广泛的优质手机应用,我们会最大化的实现这些应用的每一个功能和细节,不只停留在简单的UI模仿和Demo阶段,而是一个基本可以使用的实际 ...