52jqGrid 分组 - 远程数据(grandtotals排序)

简介: 52jqGrid 分组 - 远程数据(grandtotals排序)

这个例子类似于之前的一个,但另外我们多了一个方法来接收服务器上的总计行。 通过两个选项实现的。 footerrow:true,userDataOnFooter:true。

HTML代码举例

<html>
  <head>
    <title>jqGrid 实例</title>
  </head>
  <body>
    ···代码省略···
    <table id="48remote2"></table> 
    <div id="p48remote2"></div>
    ···代码省略···
  </body>

javascript代码举例

$(function(){
  pageInit();
});
function pageInit(){
  jQuery("#48remote2").jqGrid({
       url:ctx+'/JSONData',
    datatype: "json",
       colNames:['Inv No','Date', 'Client', 'Amount','Tax','Total','Notes'],
       colModel:[
         {name:'id',index:'id', width:55, editable:true, sorttype:'int',summaryType:'count', summaryTpl : '({0}) total'},
         {name:'invdate',index:'invdate', width:90, sorttype:'date', formatter:'date', datefmt:'d/m/Y'},
         {name:'name',index:'name', width:100},
         {name:'amount',index:'amount', width:80, align:"right", sorttype:'number',formatter:'number',summaryType:'sum'},
         {name:'tax',index:'tax', width:80, align:"right",sorttype:'number',formatter:'number',summaryType:'sum'},    
         {name:'total',index:'total', width:80,align:"right",sorttype:'number',formatter:'number', summaryType:'sum'},
         {name:'note',index:'note', width:150, sortable:false,editable:true}    
       ],
       rowNum:10,
       rowList:[10,20,30],
       height: 'auto',
       pager: '#p48remote2',
       sortname: 'invdate',
      viewrecords: true,
      sortorder: "desc",
      caption:"Grouping with remote data",
      grouping: true,
       groupingView : {
         groupField : ['name'],
         groupColumnShow : [true],
         groupText : ['<b>{0}</b>'],
         groupCollapse : false,
      groupOrder: ['asc'],
      groupSummary : [true],
      groupDataSorted : true
       },
      footerrow: true,
      userDataOnFooter: true
  });
  jQuery("#48remote2").jqGrid('navGrid','#p48remote',{add:false,edit:false,del:false});
}

java servlet代码举例

package net.mn886.blog.jqgrid.loadding_data;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
 * Servlet implementation class JSONData
 */
public class JSONData extends HttpServlet {
  private static final long serialVersionUID = 1L;
    /**
     * @see HttpServlet#HttpServlet()
     */
    public JSONData() {
        super();
        // TODO Auto-generated constructor stub
    }
  @Override
  protected void doGet(HttpServletRequest req, HttpServletResponse resp)
      throws ServletException, IOException {
    // TODO Auto-generated method stub
    doPost(req,resp);
  }
  /**
   * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    String jsondata = "{\"page\":\"1\"," +
        "      \"total\":2," +
        "      \"records\":\"13\"," +
        "      \"rows\":" +
        "          [" +
        "            {" +
        "              \"id\":\"13\"," +
        "              \"cell\":" +
        "                  [\"13\",\"2007-10-06\",\"Client 3\",\"1000.00\",\"0.00\",\"1000.00\",null]" +
        "            }," +
        "            {" +
        "              \"id\":\"12\"," +
        "              \"cell\":" +
        "                  [\"12\",\"2007-10-06\",\"Client 2\",\"700.00\",\"140.00\",\"840.00\",null]" +
        "            }," +
        "            {" +
        "              \"id\":\"11\"," +
        "              \"cell\":" +
        "                  [\"11\",\"2007-10-06\",\"Client 1\",\"600.00\",\"120.00\",\"720.00\",null]" +
        "            }," +
        "            {" +
        "              \"id\":\"10\"," +
        "              \"cell\":" +
        "                  [\"10\",\"2007-10-06\",\"Client 2\",\"100.00\",\"20.00\",\"120.00\",null]" +
        "            }," +
        "            {" +
        "              \"id\":\"9\"," +
        "              \"cell\":" +
        "                  [\"9\",\"2007-10-06\",\"Client 1\",\"200.00\",\"40.00\",\"240.00\",null]" +
        "            }," +
        "            {" +
        "              \"id\":\"8\"," +
        "              \"cell\":" +
        "                  [\"8\",\"2007-10-06\",\"Client 3\",\"200.00\",\"0.00\",\"200.00\",null]" +
        "            }," +
        "            {" +
        "              \"id\":\"7\"," +
        "              \"cell\":" +
        "                  [\"7\",\"2007-10-05\",\"Client 2\",\"120.00\",\"12.00\",\"134.00\",null]" +
        "            }," +
        "            {" +
        "              \"id\":\"6\"," +
        "              \"cell\":" +
        "                  [\"6\",\"2007-10-05\",\"Client 1\",\"50.00\",\"10.00\",\"60.00\",\"\"]" +
        "            }," +
        "            {" +
        "              \"id\":\"5\"," +
        "              \"cell\":" +
        "                  [\"5\",\"2007-10-05\",\"Client 3\",\"100.00\",\"0.00\",\"100.00\",\"no tax at all\"]" +
        "            }," +
        "            {" +
        "              \"id\":\"4\"," +
        "              \"cell\":" +
        "                  [\"4\",\"2007-10-04\",\"Client 3\",\"150.00\",\"0.00\",\"150.00\",\"no tax\"]" +
        "            }" +
        "          ]," +
        "      \"userdata\":{\"amount\":3220,\"tax\":342,\"total\":3564,\"name\":\"Totals:\"}" +
        "    }";
    response.getWriter().write(jsondata);
  }
}

目录
相关文章
|
JavaScript 前端开发 Java
51jqGrid 分组 - 远程数据(排序过)
51jqGrid 分组 - 远程数据(排序过)
46 0
51jqGrid 分组 - 远程数据(排序过)
|
JavaScript 前端开发 Java
57jqGrid 分组 - 多分组在头部显示求和(新)
57jqGrid 分组 - 多分组在头部显示求和(新)
40 0
|
JavaScript 前端开发
49jqGrid 分组 - 分组行折叠
49jqGrid 分组 - 分组行折叠
57 0
|
JSON JavaScript 前端开发
78jqGrid - 列分组
78jqGrid - 列分组
45 0
|
7月前
用dragstart、drag、dragend、dragover、drop、dragleave实现针对表格列的顺序进行拖拽排序(附带实现选择某几列数据显示或隐藏)
用dragstart、drag、dragend、dragover、drop、dragleave实现针对表格列的顺序进行拖拽排序(附带实现选择某几列数据显示或隐藏)
|
1月前
|
前端开发 搜索推荐 测试技术
React 数据表格排序与过滤
本文介绍了如何在 React 中实现数据表格的排序和过滤功能,从基础概念到实际代码实现,涵盖排序和过滤的基本原理、实现步骤、常见问题及解决方法。通过合理管理状态、优化性能和避免常见错误,帮助开发者提高用户体验和开发效率。
53 4
|
JavaScript 前端开发
47jqGrid 分组 - 分组表头行配置
47jqGrid 分组 - 分组表头行配置
83 0
|
JavaScript
Vue实现列表过滤与排序的两种方法
Vue实现列表过滤与排序的两种方法
160 0
|
7月前
|
JSON JavaScript 前端开发
JavaScript随手笔记---数组中相同的元素进行分组(数据聚合) groupBy函数
JavaScript随手笔记---数组中相同的元素进行分组(数据聚合) groupBy函数
|
JavaScript 前端开发
45jqGrid 分组 - 数组数据的简单分组
45jqGrid 分组 - 数组数据的简单分组
46 0

热门文章

最新文章