jqGrid排序的两种实现方式:

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jqGrid排序的两种实现方式:相关的知识,希望对你有一定的参考价值。

原创lnst
jqGrid排序的两种实现方式:
实现方案一客户端实现排序:
jqGrid属性 loadonce:true时,所有数据加载在客户端,点击列标题由jqGrid在客户端自动排序,不再从服务器取值。
参考文件:ccMxCxTjCc.js
js设定:
jqGrid的设定:
colModel: [
{
.....
name: ‘zykj‘,
sortable: true,
},
......
}],
......
loadonce:true, //一次加载全部数据到客户端,由客户端进行排序。
sortable: true,
sortname: ‘zykj‘, //设置默认的排序列
sortorder: ‘asc‘,
 
 
实现方案二:sql排序
在Model层加入,需要生成setter、getter方法。
// 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:
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的传入使用$符号。不适用#。
<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排序的两种实现方式:的主要内容,如果未能解决你的问题,请参考以下文章

java集合进行排序的两种方式

java list排序的两种方式(实现Comparable接口和Collections.sort重载方法)

排序算法之冒泡排序的两种方式

java集合进行排序的两种方式

TreeSet的两种排序方式比较

C++排序的两种方式