Struts2绑定Jquery EasyUI的Datagrid分页

本文介绍如何使用EasyUI的datagrid组件实现分页显示数据,并结合Struts2和Hibernate完成数据的分页查询及JSON格式的数据返回。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、js代码:

   

[javascript] view plain copy
  1. <script>  
  2.         $(function(){  
  3.         $('#tt').datagrid({    
  4.                  title:'交易码列表',    
  5.                  iconCls:'icon-edit',//图标    
  6.                  width: 700,    
  7.                  height: 'auto',    
  8.                  nowrap: false,    
  9.                  striped: true,    
  10.                  border: true,    
  11.                  collapsible:true,//是否可折叠的    
  12.                  fit: true,//自动大小    
  13.                  url:'admin/TransCode-list',    
  14.                  //sortName: 'code',    
  15.                  //sortOrder: 'desc',    
  16.                  remoteSort:false,     
  17.                  idField:'id',    
  18.                  singleSelect:false,//是否单选    
  19.                  pagination:true,//分页控件    
  20.                  rownumbers:true//行号    
  21.              });  
  22.               //设置分页控件    
  23.               var p = $('#tt').datagrid('getPager');    
  24.                $(p).pagination({    
  25.                     pageSize: 10,//每页显示的记录条数,默认为10    
  26.                     pageList: [5,10,15],//可以设置每页记录条数的列表    
  27.                     beforePageText: '第',//页数文本框前显示的汉字    
  28.                     afterPageText: '页    共 {pages} 页',    
  29.                     displayMsg: '当前显示 {from} - {to} 条记录   共 {total} 条记录'  
  30.                       
  31.                 });   
  32.                         
  33.         });  
  34.   
  35.     </script>  
对昨天 绑定用的datagrid(){}进行了修改,把columns写在了jsp里面了,这样看着js代码比较舒服,呵呵!

2、jsp代码:

  1. <table id="tt">  
  2.   <thead>    
  3.        <tr>    
  4.            <th field="id" width="100">ID</th>    
  5.            <th field="tranNo" width="100">交易码</th>    
  6.            <th field="tranName" width="100">交易名称</th>    
  7.            <th field="cr_Num" width="100">CR号</th>    
  8.        </tr>    
  9.   
  10.    </thead>  
  11. </table>  

3、action代码:

  1. public class TransCodeAction extends ActionSupport {  
  2.   
  3.     private List<TransCode> transCodes;  
  4.     private TransCodeManager transCodeManager;  
  5.     private int id;  
  6.     private JSONObject resultObj ;  
  7.     <strong>private String rows;//每页显示的记录数    
  8.         private String page;//当前第几页</strong>  
  9.          //这两个属性是datagrid分页提供的两个参数,参数名一定是这样的,当前台发送请求时会把这两个数据带到action中  
  10.     public JSONObject getResultObj() {  
  11.         return resultObj;  
  12.     }  
  13.   
  14.     public void setResultObj(JSONObject resultObj) {  
  15.         this.resultObj = resultObj;  
  16.     }  
  17.   
  18.     public String list() {  
  19.         HttpServletResponse resp = ServletActionContext.getResponse();  
  20.         resp.setContentType("application/json");  
  21.     <strong>    //当前页    
  22.         int intPage = Integer.parseInt((page == null || page == "0") ? "1":page);    
  23.         //每页显示条数    
  24.         int number = Integer.parseInt((rows == null || rows == "0") ? "5":rows);    
  25.           
  26.         //每页的开始记录  第一页为1  第二页为number +1     
  27.         int start = (intPage-1)*number;</strong>  
  28.         transCodes = transCodeManager.getAllByPage(start,number);//通过hibernate进行分页查询      
  29.          ArrayList al = new ArrayList();  
  30.          for(TransCode tc:transCodes)  
  31.          {   
  32.              Map<String, Object> m = new HashMap<String, Object>();   
  33.              m.put("id", tc.getId());  
  34.              m.put("tranName", tc.getTranName());  
  35.              m.put("tranNo", tc.getTranNo());  
  36.              m.put("cr_Num", tc.getCr_Num());  
  37.              al.add(m);  
  38.           }   
  39.            Map<String, Object> json = new HashMap<String, Object>();   
  40.           json.put("total", <strong>transCodeManager.totalCount()</strong>);//total键 存放总记录数,必须的 json.put("rows", jsonArray);// rows键 存放每页记录 list (粗体字表示所有记录数据条数)  
  41.           json.put("rows", al);  
  42.           resultObj = JSONObject.fromObject(json);// 格式化result一定要是JSONObject  
  43.         return SUCCESS;  
  44.     }  
  45.   
  46.       
  47.     public List<TransCode> getTransCodes() {  
  48.         return transCodes;  
  49.     }  
  50.   
  51.     public void setTransCodes(List<TransCode> transCodes) {  
  52.         this.transCodes = transCodes;  
  53.     }  
  54.   
  55.     public TransCodeManager getTransCodeManager() {  
  56.         return transCodeManager;  
  57.     }  
  58.   
  59.     @Resource  
  60.     public void setTransCodeManager(TransCodeManager transCodeManager) {  
  61.         this.transCodeManager = transCodeManager;  
  62.     }  
  63.   
  64.     public int getId() {  
  65.         return id;  
  66.     }  
  67.   
  68.     public void setId(int id) {  
  69.         this.id = id;  
  70.     }  
  71.   
  72.   
  73.     public String getRows() {  
  74.         return rows;  
  75.     }  
  76.   
  77.     public void setRows(String rows) {  
  78.         this.rows = rows;  
  79.     }  
  80.   
  81.     public String getPage() {  
  82.         return page;  
  83.     }  
  84.   
  85.     public void setPage(String page) {  
  86.         this.page = page;  
  87.     }  
  88.   
  89.   
  90.   
  91. }  
加粗部分都是新添加或者修改的。
3、struts.xml

  1. <package name="admin" namespace="/admin" extends="json-default" >  
  2.   
  3.       <action name="*-list" class="TransactionSystem.action.{1}Action" method="list">  
  4.             <result type="json" >  
  5.             <param name="root">resultObj</param>  
  6.             </result>  
  7.       </action>  
  8.   
  9.    </package>   

效果图





资源下载链接为: https://pan.quark.cn/s/d9ef5828b597 在 IT 领域,我们有时需要清理系统中不再需要的软件,比如 OneKey 一键还原。OneKey 是一款常见的 Windows 系统备份与还原工具,但当用户不再使用它时,可能会面临卸载难题。通常的卸载方法可能无法完全清除 OneKey,因为它的某些组件可能隐藏在系统各处。 在开始卸载之前,要先关闭所有 OneKey 的进程,可通过任务管理器来完成这一步。接着打开控制面板,找到程序和功能选项,尝试从这里卸载 OneKey,这是常规的卸载方式。如果在控制面板的卸载程序列表里找不到 OneKey,那就得手动查找它的安装位置。一般情况下,软件的安装目录位于 C 盘的 Program Files 或 Program Files (x86) 文件夹中。进入 OneKey 的安装目录,寻找卸载程序或脚本并执行,以此启动卸载流程。 在卸载过程中,可能会碰到注册表项的问题。OneKey 安装时会在注册表中添加许多键值,这些键值在常规卸载后可能还存在,从而导致残留文件和错误消息。所以,卸载完成后需要手动清理注册表。不过,修改注册表是存在一定风险的,误删可能会引发系统问题。因此,在动手之前最好备份注册表或整个系统。打开注册表编辑器(regedit),搜索与 OneKey 相关的键值,比如程序名称、作者等,然后安全地将它们删除。 此外,OneKey 可能在启动项中设置了自启动项,这会导致即使卸载后,程序仍能在开机时运行。打开系统配置(msconfig),在启动选项里查找并禁用或删除 OneKey 的相关条目。 如果按照上述步骤操作后仍无法彻底卸载 OneKey,可以考虑使用专业的卸载工具,例如 Revo Uninstaller。这类工具能够深度扫描并清理程序留下的痕迹,有助于完全卸载 OneKey。如果手头有
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值