HTML

<div class="row">
<div class="col-sm-20">
<form id="formSearch" class="form-horizontal">
<div class="form-group" style="margin-top:15px">
<label class="control-label col-sm-1" style="margin-left: 20px;" for="GOODS_ID">商品ID</label>
<div class="col-sm-2">
<input type="text" class="form-control" id="GOODS_ID" name="GOODS_ID">
</div>
<label class="control-label col-sm-1" style="width: 120px" for="GOODS_NAM">商品名称 </label>
<div class="col-sm-2">
<input type="text" class="form-control" id="GOODS_NAM">
</div>
<div class="col-sm-1" style="text-align:center;">
<button type="button" id="find_btn" class="btn btn-primary">查询</button>
</div>
</div>
</form>
<div class="ibox-content">
<div class="jqGrid_wrapper">
<table id="table_list_2"></table>
<div id="pager_list_2" style="width: 100%"></div>
</div>
</div>
</div>
</div>

table_list_2    数据显示的地方                pager_list_2    表格下面的分页参数

js

 /* -----------------------------加载表数据  开始  -------------------------------- */
$(document).ready(function(){
$.jgrid.defaults.styleUI="Bootstrap";
$("#table_list_2").jqGrid({
height:434,autowidth:true, shrinkToFit:true,/* autoScroll: false, *//*forceFit: true, */
colNames:["商品ID","商品名称","商品单价","库存","上架日期","上架时间","商品描述","操作 "],
colModel:[{name:"GOODS_ID",index:"GOODS_ID",autowidth:true,align:"center"},
{name:"GOODS_NAM",index:"GOODS_NAM",autowidth:true,align:"center"},
{name:"GOODS_PRICE",index:"GOODS_PRICE",autowidth:true,align:"center"},
{name:"G_STOCK",index:"G_STOCK",autowidth:true,align:"center"},
{name:"UP_SHELVES_DAT",index:"UP_SHELVES_DAT",autowidth:true,align:"center"},
{name:"UP_SHELVES_TIM",index:"UP_SHELVES_TIM",autowidth:true,align:"center"},
{name:"G_DESC",index:"G_DESC",autowidth:true,align:"center"},
{name:"edit",index:"edit",autowidth:true,align:"center"}
],
pager:"#pager_list_2",
viewrecords:true,hidegrid:false,
url:"<%=path %>/terminal/findGoodInfo",
datatype:'json',
rownumbers: true,
rowNum : 10,
rowList : [ 10, 15,30 ],
jsonReader: {
root:"dataList", page:"currPage", total:"totalpages", // 很重要 定义了 后台分页参数的名字。
records:"totalCount", repeatitems:false, id : "id"
},
gridComplete: function () { // 数据加载完成后 添加 采购按钮
var ids = jQuery("#table_list_2").jqGrid('getDataIDs');
for (var i = 0; i < ids.length; i++) {
var id = ids[i];
var editBtn = "<button style='color:#f60' onclick='purchase("+ id +")' >采购</button>";
jQuery("#table_list_2").jqGrid('setRowData', ids[i], { edit: editBtn});
}
},
})
});

点击按钮 获取行数据

 function purchase(id){
var model = jQuery("#table_list_2").jqGrid('getRowData', id);
var GOODS_ID = model.GOODS_ID;
var GOODS_NAM = model.GOODS_NAM;
var GOODS_PRICE = model.GOODS_PRICE;
  }

条件查询  点击查询按钮的时候:

$(function(){
$("#find_btn").click(function(){
var GOODS_ID = escape($("#GOODS_ID").val());
var GOODS_ID = escape($("#GOODS_NAME").val());
$("#table_list_2").jqGrid('setGridParam',{
url:"goood/query.do",
postData:{'GOODS_ID':GOODS_ID,'GOODS_NAME':GOODS_NAME}, //发送数据
page:1
}).trigger("reloadGrid"); //重新载入
});
});

效果

注意,jsonReader    很重要

需要定义jsonReader来跟服务器端返回的数据做对应

jsonReader的重要分页属性属性

root
包含实际数据的数组
page
当前页
total
总的页数
totalCount
总的记录数(查出来的总条数)
   
 jsonReader: {
root:"dataList", page:"currPage", total:"totalpages", // 很重要 定义了 后台分页参数的名字。
records:"totalCount", repeatitems:false, id : "id"
},

服务器返回的json格式

{totalpages: "xxx",

currPage: "yyy",

totalCount: "zzz",

dataList: [

{AGENTID:"1",STATUS:"1", AGTNAM:"1", APPLYDAT:"1", AGTTEL:"1", USER_ID:"1"},

{AGENTID:"1",STATUS:"1", AGTNAM:"1", APPLYDAT:"1", AGTTEL:"1", USER_ID:"1"}]

}

数据会通过 colModel 中的name 自动装填

1.jqGrid初始化参数

http://blog.mn886.net/jqGrid/

2.jqGrid colModel 参数

http://blog.mn886.net/jqGrid/

jqGrid jqGrid分页参数+条件查询的更多相关文章

  1. MongoTemplate 分组分页复合条件查询

    一.前言 最近项目使用MongoDB作为数据主要存取的地方 又是第一次接触MongoDB,也是踩了不少坑... 维护数据无非就是增删改查,而里面最复杂的就是查询了 所以来总结一下有关MongoDB的查 ...

  2. MyBatis参数条件查询传入的值为0时的判断

    MyBatis条件查询对字段判断是否为空一般为: <if test="testValue!=null and testValue != ''"> and test_va ...

  3. 分页离线条件查询 页面响应500 后端未报异常 list集合有数据

    如果 使用同一个Hibernate的DetachedCriteria离线条件查询对象同时查询“过滤后条数” 和 “过滤后的数据集合”,那么查询记录数时需要设置聚合函数条件并且 使用聚合函数  代码要在 ...

  4. springboot带分页的条件查询

    QueryDSL简介 QueryDSL仅仅是一个通用的查询框架,专注于通过Java API构建类型安全的SQL查询. Querydsl可以通过一组通用的查询API为用户构建出适合不同类型ORM框架或者 ...

  5. 【JPA】Spring Data JPA 实现分页和条件查询

    文章目录 1.在`Repository`层继承两个接口 2.在Service层进行查询操作 3.Page的方法 1.在Repository层继承两个接口 JpaRepository<Admin, ...

  6. ajxa分页+多条件查询

    操作日志数据库表: 主页面: <script src="../fzl/jquery-1.11.2.min.js"></script> <script ...

  7. django项目中的ajax分页和条件查询。

    1,路由 #主页面路由 re_path('article/article_list/', article.article_list,name='article/article_list/'), #分页 ...

  8. spring JPA分页排序条件查询

    @RequestMapping("/listByPage") public Page<Production> listByPage(int page, int size ...

  9. 动态多条件查询分页以及排序(一)--MVC与Entity Framework版url分页版

    一.前言 多条件查询分页以及排序  每个系统里都会有这个的代码 做好这块 可以大大提高开发效率  所以博主分享下自己的6个版本的 多条件查询分页以及排序 二.目前状况 不论是ado.net 还是EF ...

随机推荐

  1. C# 视频编辑

    VidCoder VidCoder是一个开源免费的DVD/蓝光视频抓取和转码软件.使用HandBrake做为编码引擎.比Handbrake拥有更友好的用户界面. 可裁剪.剪切.字幕编辑.转码等. 官网 ...

  2. Lenovo K29 笔记本经常没声音解决方案Hotkey[gevu18ww].exe

    下载 win8 快捷键驱动 安装即可解决 http://driverdl.lenovo.com.cn/lenovo/DriverFilesUploadFloder/36265/Hotkey[gevu1 ...

  3. Delphi_05_Delphi_Object_Pascal_基本语法_03

    继续Delphi的学习之旅, 废话不多说,直接贴代码. { Delphi基本语法 1.对象 2.指针 3.类型别名 和 类型转换 } program DelphiObject; {$APPTYPE C ...

  4. 认识Git

    ---恢复内容开始--- Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. Git作为当下最潮流的版本控制工具也是有他独特的不同,最大的不同就在于他有分布式版本管理的 ...

  5. 关于css3的背景渐变

    关于css3的渐变,目前各大浏览器还未做到很好的支持,所以需要在我们使用时加上各大浏览器前缀. -moz-:使用Mozilla内核的浏览器(Firefox浏览器) -webkit-:使用Webkit内 ...

  6. JS高程4.变量,作用域和内存问题(2)执行环境及作用域

    1.执行环境:执行环境定义了变量或函数有权访问的其他数据,决定了它们各自的行为, 每个执行环境都有一个与之相关联的变量对象,环境中定义的所有变量和函数都保存在这个对象中. 2.全局执行环境: 最外围的 ...

  7. CSS3之新UI方案

    border-radius 圆角 参数可为像素 也可为百分比 当一个参数时 作用范围为四个角 当两个参数时 作用范围为 左上右下 右上左下 当三个参数时 作用范围为 左上 右上左下 右下 当四个参数时 ...

  8. 获得设备的唯一标识符UDID

    在IOS5之后,苹果为避免根据UDID获得用户的信息,而禁止使用uniqueIdentifier获得UDID,但是仍有些应用需要根据UDID区分设备 有一个系统的库IOKit.framework可以获 ...

  9. Eclipse安装SVN插件

    Eclipse 安装最新SVN插件 下载地址 下载最新的Eclipse,我使用的是eclipse-jee-kepler-SR2-win32-x86_64.zip(Eclipse IDE for Jav ...

  10. Web系统性能测试术语简介

    并发用户 并发一般分为两种情况.一种是严格意义上的并发,即所有的用户在同一时刻做同一件事情或者操作.这种操作一般指做同一类型的业务,比如在信用卡审批业务中,一定数目的用户在同一时刻对已经完成的审批业务 ...