您好,欢迎来到二三四教育网。
搜索
您的当前位置:首页jqGrid排序的两种实现方式

jqGrid排序的两种实现方式

来源:二三四教育网

jqGrid排序的两种实现方式

[TOC]

实现方案一:sql排序

在Model层加入,需要生成setter、getter方法。

Bean.java

// sidx和sord是jqGrid存在的变量,接受列点击之后传过来的值。
 /*
  * sord代表排序规则(asc、desc)
  */
 private String sord;
 /**
  * sidx代表排序的列名
  */
 private String sidx;
 /**
  * sord代表排序规则(asc、desc)
  * @return sord
  */
 public String getSord() {
  return sord;
 }
 
 /*
  * 设置 sord代表排序规则(asc、desc)
  * @param sord
  */
 public void setSord(String sord) {
  this.sord = sord == null ? null : sord.trim();
 }
 
 /**
  * 获取 sidx代表排序的列名
  * @return 获取sidx代表排序的列名
  */
 public String getSidx() {
  return sidx;
 }
 
 /**
  * 设置 sidx代表排序的列名
  * @param sidx
  */
 public void setSidx(String sidx) {
  this.sidx = sidx == null ? null : sidx.trim();
 }

jqGrid的js

colModel:
 sortable: true,jqGrid属性:
 sortable: true,
 sortname: 'zykj', //设置默认的排序列
 sortorder: 'asc',
loadonce:false, //一次加载全部数据到客户端,由客户端进行排序。jqGrid的onSortCol在简单排序时,不需要设定。
  //onSortCol: function (index, colindex, sortorder) {
  // jqGridTable.setGridParam({
  //sortorder排序规则 asc、desc
  //colindex列索引 0开始
  //index:列name、’zykj’
  // }).trigger("reloadGrid");
  //},

Mybatis配置文件:
SELECT的xml设定不需要配置statement=”STATEMENT”,sidx、sord的传入使用$符号。不适用#。
xml

<select id="pagesList" parameterType="com.entity.model.ModelDemo" resultMap="BaseResultMap" >
  SELECT
  T1.SJHS
  , T1.ZYKJ
 FROM TABLE T1
  WHERE 0=0
  <if test="sidx != null and sord!='' and sord != null and sidx != ''">
  ORDER BY T1.${sidx} ${sord}
  </if>
</select>

实现方案二:客户端实现排序

jqGrid属性 loadonce:true时,所有数据加载在客户端,点击列标题由jqGrid在客户端自动排序,不再从服务器取值。
js的设定:

//jqGrid的设定
colModel: [
  {
 .....
 name: 'zykj',
  sortable: true,
  },
......
  }],
 ......
loadonce:true, //一次加载全部数据到客户端,由客户端进行排序。
 sortable: true,
 sortname: 'zykj', //设置默认的排序列
 sortorder: 'asc',

Copyright © 2019- how234.cn 版权所有 赣ICP备2023008801号-2

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务