Pager Bar位于表格最下边。默认情况下,分为三部分。如图:

  • 第一部分:导航按钮栏(Navigator)
  • 第二部分:页码栏(Pager)
  • 第三部分:记录信息栏(Record)
        要实现这个功能也不难,最基本的语法就一句。
1
$("#gridTable").jqGrid('navGrid', '#gridPager');
        但是很多时候我们需要的不仅仅是这种,还有很多属性需要了解。
1. Navigator

默认有5个预定义好的按钮:

    • 添加新行
    • 编辑选中的行
    • 删除选中的行
    • 查找记录
    • 重载表格

Navigator通过navGrid方法来配置导航栏,用法是:
$(“#grid_id”).navGrid(‘#gridpager’,{parameters},prmEdit, prmAdd, prmDel, prmSearch, prmView); 或
$(“#grid_id”).jqGrid(‘navGrid’,'#gridpager’,{parameters},prmEdit, prmAdd, prmDel, prmSearch, prmView);

        1.1. Navigator相关参数
  • add:定义是否启用添加操作的按钮;
  • addicon:用于添加操作的按钮上的图标,目前只能使用jQuery UI中的图标样式;
  • addtext:用于添加操作的按钮上的文本;
  • addtitle:用于添加操作的按钮上的tooltip;
  • del/delicon/deltext/deltitle:用于删除按钮的一套属性,可以参照添加按钮的几个属性;
  • edit/editicon/edittext/edittitle:用于编辑按钮的一套属性,可以参照添加按钮的几个属性;
  • refresh/refreshicon/refreshtext/refreshtitle:用于刷新表格按钮的一套属性,可以参照添加按钮的几个属性;当点击这个按钮时,将执行trigger(“reloadGrid”)并清除用于查询的参数;
  • refreshstate:定义如何重新载入Grid表格,firstpage:重新载入表格的第一页;current:重新载入当前页,并保存当前选中的行;默认为firstpage;
  • afterRefresh:定义点击刷新表格按钮之后的事件函数;
  • beforeRefresh:定义点击刷新表格按钮之前的事件函数;
  • search/searchicon/searchtext/searchtitle:用于查询按钮的一套属性,可以参照添加按钮的几个属性;当点击这个按钮时,将会调用searchGrid方法;
  • view/viewicon/viewtext/viewtitle:用于查看记录按钮的一套属性,可以参照添加按钮的几个属性;
  • addfunc:如果定义,则用定义的函数替代原有的add函数,这个函数将不接受任何参数;
  • editfunc:如果定义,则用定义的函数替代原有的edit函数,编辑的行的id作为参数传入这个函数;
  • delfunc:如果定义,则用定义的函数替代原有的del函数,编辑的行的id作为参数传入这个函数;
  • alertcap:当未选中任何行而点击编辑、删除、查看按钮时,弹出的提示框的标题;
  • alerttext:当未选中任何行而点击编辑、删除、查看按钮时,弹出的提示信息;
  • cloneToTop:定义是否“拷贝”一套导航按钮到Grid表格顶端的Pager中,默认为false;

借助这些选项,可以将上一篇中的例子,修改一下,更多的借助Jqgrid内置的功能。例如,当载入行数据到对话框时,之前是通过在自定义的loadSelectedRowData方法中,调用jqGrid(“getGridParam”, “selrow”)来检查是否有选中的数据行。现在在点击编辑或删除按钮的时候,可以通过 Jqgrid 自己检查是否有选中的数据行,如果没有则弹出提示。如果有则选中的行,则还会将行id作为参数,传入对应的函数方法中。代码如下:

1
2
3
4
5
6
$("#gridTable").jqGrid('navGrid', '#gridPager',{
addStu : addStu,//点击添加按钮,调用添加方法
updateStu : updateStu,//点击修改按钮,调用修改方法
delStu : delStu,//点击删除按钮,调用删除方法
viewStu : viewStu,//点击查看按钮,调用查看方法
});

1.2 关于prmEdit、prmAdd、prmDel、prmSearch、prmView的参数

Jqgird本身为这些参数定义了默认值,而且不同的language文件也有各自的定义来覆盖原始的默认值。我们也可以在jqGrid重新定义新的值,以覆盖默认的值。在我做的DEMO中,没有涉及这一块,所以具体的参数可以查看官方文档。地址:http://www.trirand.com/jqgridwiki/doku.php?id=wiki:navigator

1.3自定义按钮

 
        有的时候,Jqgrid默认的按钮可能不能满足我们的要求,别急,它还提供了添加自定义按钮的方法。具体API是:
        $(“#grid_id”).navGrid(“#pager”,…).navButtonAdd(“#pager”,{parameters});

$(“#grid_id”).jqGrid(‘navGrid’,”#pager”,…).jqGrid(‘navButtonAdd’,”#pager”,{parameters});

关于navButtonAdd的属性:

  • caption:按钮上显示的文本,可以是空值;
  • buttonicon:按钮上的图标,如果设为“none”,则只显示按钮上的文本;
  • onClickButton:当点击按钮时所调用的方法函数,默认为null;
  • position:添加新按钮的位置,first或last;默认为last;
  • title:新按钮的tooltip
  • cursor:当鼠标滑过按钮时的光标样式,默认为pointer;
  • id:为按钮设置id。
比如我们可以利用Jqgrid的自定义按钮的方法,在Navigator里面加入打印、下载等方法。这些方法可以自己实现。
 
    2. Pager和Record的属性
 
    这两个区域的属性我们一般不需要改变什么,用默认的就行了,如果想要了解它的属性,可以去官方文档看看。官方文档:http://www.trirand.com/jqgridwiki/doku.php?id=wiki:pager
   下一章节就开始讨论Dao层的方法该如何实现。

原创文章,转载请注明: 转载自java开发者

本文链接地址: Jqgrid入门-别具特色的Pager Bar (四)

Jqgrid入门-别具特色的Pager Bar (四)的更多相关文章

  1. Web jquery表格组件 JQGrid 的使用 - 5.Pager翻页、搜索、格式化、自定义按钮

    系列索引 Web jquery表格组件 JQGrid 的使用 - 从入门到精通 开篇及索引 Web jquery表格组件 JQGrid 的使用 - 4.JQGrid参数.ColModel API.事件 ...

  2. Web jquery表格组件 JQGrid 的使用 - 8.Pager、新增数据、查询、刷新、查看数据

    系列索引 Web jquery表格组件 JQGrid 的使用 - 从入门到精通 开篇及索引 Web jquery表格组件 JQGrid 的使用 - 4.JQGrid参数.ColModel API.事件 ...

  3. Jqgrid入门-结合Struts2+json实现数据展示(五)

    DEMO用的是ssh框架实现的,具体怎么搭建的就不多做说明了.分页表格的数据操作难点就是数据展现.至于增删改直接用hibernate原生的方法实现即可.         初步分析:表格要实现分页,那么 ...

  4. Jqgrid入门-显示基本的表格(一)

    首先对Jqgrid网格插件做个简要的说明.在众多的表格插件中,Jqgrid的特点是非常鲜明的.         特点如下: 完整的表格呈现与运算功能,包含换页.栏位排序.grouping.新增.修改及 ...

  5. SQL 存储过程入门(事务)(四)

    SQL 存储过程入门(事务)(四)   本篇我们来讲一下事务处理技术. 为什么要使用事务呢,事务有什么用呢,举个例子. 假设我们现在有个业务,当做成功某件事情的时候要向2张表中插入数据,A表,B表,我 ...

  6. Jqgrid入门-Jqgrid格式化数据(九)

    上一章已经说明了在Jqgrid中如何对数据分组,这一章主要探讨如何格式化Jqgrid中的数据.何谓格式化呢?举个例子,比如对时间格式化处理,去掉后面的时分秒:对数字进行处理,加上千分位分隔符,小数的保 ...

  7. Jqgrid入门-Jqgrid分组的实现(八)

    上一章主要说明了如果实现Jqgrid列数据拖动,这一章主要讨论在Jqgrid中如何实现分组功能.         类似于Sql语句的Group By,Jqgrid提供了属性实现数据分组,这样表现数据会 ...

  8. Jqgrid入门-Jqgrid列数据拖动(七)

    上一章提到在Jqgrid中如何设置二级表头,这一章节主要探讨Jqgrid表格里面的数据如果实现拖动功能,比如你想把第一行的数据拖到当前页的最后一行,或者其他位置.     Jqgrid表格插件自己没有 ...

  9. Jqgrid入门-Jqgrid设置二级表头(六)

    上一章已经说明了Jqgrid结合Struts2+json展示数据,这一章主要探讨Jqgrid如何设置二级表头,类似这样的效果.如:           要实现这个功能,其实也不难.通过Jqgrid的s ...

随机推荐

  1. C# 连接 Oracle 的几种方式[转]

    本文转自:http://www.cnblogs.com/storys/archive/2013/03/06/2945914.html 一:通过System.Data.OracleClient(需要安装 ...

  2. 【UVA】【10828】随机程序

    数学期望/高斯消元/马尔可夫过程 刘汝佳老师白书上的例题- -b 本体不满足拓扑关系,但马尔可夫过程是可以高斯消元解的…… 用「高斯·约当消元」更方便! //UVA 10828 #include< ...

  3. Java多线程——<四>让线程有返回值

    一.概述 到目前为止,我们已经能够声明并使一个线程任务运行起来了.但是遇到一个问题:现在定义的任务都没有任何返回值,那么加入我们希望一个任务运行结束后告诉我一个结果,该结果表名任务执行成功或失败,此时 ...

  4. [luogu 1880]石子合并

    题目描述 在一个园形操场的四周摆放N堆石子,现要将石子有次序地合并成一堆.规定每次只能选相邻的2堆合并成新的一堆,并将新的一堆的石子数,记为该次合并的得分. 试设计出1个算法,计算出将N堆石子合并成1 ...

  5. Emmet快速编写CSS样式

    基本的CSS样式编写时,很多样式只需输入首字母即可得到不带属性值的CSS样式,像上面说到的margin. 1.而对于一些带有特定的属性值的CSS样式,只需输入CSS标签与属性值的首字母就可以,比如: ...

  6. 使用JAVA反射初始化数组(转)

    在做JSON解析时,遇到了在不知道数组类型的前期下,需要转化为具体类型数组的问题.可以使用JAVA的反射来做. JSONArray jsonArray = (JSONArray) entry.getV ...

  7. PHP的反射机制(转)

    介绍: PHP5添加了一项新的功能:Reflection.这个功能使得phper可以reverse-engineer class, interface,function,method and exte ...

  8. 设置Eclipse智能提示

    原地址:http://blog.csdn.net/sz_bdqn/article/details/4956162 今天有点时间,研究了一下MyEclispse的智能感知的功能.刚开始使用它时总是感觉如 ...

  9. docker设置代理

    在天朝使用docker需要FQ. 下面给出docker的代理方式: HTTP_PROXY=http://10.167.251.83:8080 docker -d

  10. C# 知识笔记

    HttpContext.Request.Form.ToString() 获取Form表单中的内容 /// <summary> /// 获取 GET 提交方式值 /// </summa ...