Struts2绑定Jquery EasyUI的Datagrid分页

昨天写的 Struts2绑定Jquery EasyUI 只是描述了struts绑定JqueryEasyUI的datagrid,只是把从后台读取出来的数据绑定到datagrid上,并没有实现分页功能,今天在昨天的功能上实现分页功能。

1、js代码:

   

<script>
		$(function(){
		$('#tt').datagrid({  
                 title:'交易码列表',  
                 iconCls:'icon-edit',//图标  
                 width: 700,  
                 height: 'auto',  
                 nowrap: false,  
                 striped: true,  
                 border: true,  
                 collapsible:true,//是否可折叠的  
                 fit: true,//自动大小  
                 url:'admin/TransCode-list',  
                 //sortName: 'code',  
                 //sortOrder: 'desc',  
                 remoteSort:false,   
                 idField:'id',  
                 singleSelect:false,//是否单选  
                 pagination:true,//分页控件  
                 rownumbers:true//行号  
             });
              //设置分页控件  
              var p = $('#tt').datagrid('getPager');  
               $(p).pagination({  
                    pageSize: 10,//每页显示的记录条数,默认为10  
                    pageList: [5,10,15],//可以设置每页记录条数的列表  
                    beforePageText: '第',//页数文本框前显示的汉字  
                    afterPageText: '页    共 {pages} 页',  
                    displayMsg: '当前显示 {from} - {to} 条记录   共 {total} 条记录'
                    
                }); 
                      
		});

	</script>
对昨天 绑定用的datagrid(){}进行了修改,把columns写在了jsp里面了,这样看着js代码比较舒服,呵呵!

2、jsp代码:

	<table id="tt">
	  <thead>  
        <tr>  
            <th field="id" width="100">ID</th>  
            <th field="tranNo" width="100">交易码</th>  
            <th field="tranName" width="100">交易名称</th>  
            <th field="cr_Num" width="100">CR号</th>  
        </tr>  

    </thead>
	</table>

3、action代码:

public class TransCodeAction extends ActionSupport {

	private List<TransCode> transCodes;
	private TransCodeManager transCodeManager;
	private int id;
	private JSONObject resultObj ;
	private String rows;//每页显示的记录数  
        private String page;//当前第几页
         //这两个属性是datagrid分页提供的两个参数,参数名一定是这样的,当前台发送请求时会把这两个数据带到action中
	public JSONObject getResultObj() {
		return resultObj;
	}

	public void setResultObj(JSONObject resultObj) {
		this.resultObj = resultObj;
	}

	public String list() {
		HttpServletResponse resp = ServletActionContext.getResponse();
		resp.setContentType("application/json");
	    //当前页  
        int intPage = Integer.parseInt((page == null || page == "0") ? "1":page);  
        //每页显示条数  
        int number = Integer.parseInt((rows == null || rows == "0") ? "5":rows);  
        
        //每页的开始记录  第一页为1  第二页为number +1   
        int start = (intPage-1)*number;
		transCodes = transCodeManager.getAllByPage(start,number);//通过hibernate进行分页查询	
		 ArrayList al = new ArrayList();
		 for(TransCode tc:transCodes)
		 { 
			 Map<String, Object> m = new HashMap<String, Object>(); 
		     m.put("id", tc.getId());
		     m.put("tranName", tc.getTranName());
		     m.put("tranNo", tc.getTranNo());
		     m.put("cr_Num", tc.getCr_Num());
		     al.add(m);
		  } 
		   Map<String, Object> json = new HashMap<String, Object>(); 
		  json.put("total", transCodeManager.totalCount());//total键 存放总记录数,必须的 json.put("rows", jsonArray);// rows键 存放每页记录 list (粗体字表示所有记录数据条数)
		  json.put("rows", al);
		  resultObj = JSONObject.fromObject(json);// 格式化result一定要是JSONObject
		return SUCCESS;
	}

	
	public List<TransCode> getTransCodes() {
		return transCodes;
	}

	public void setTransCodes(List<TransCode> transCodes) {
		this.transCodes = transCodes;
	}

	public TransCodeManager getTransCodeManager() {
		return transCodeManager;
	}

	@Resource
	public void setTransCodeManager(TransCodeManager transCodeManager) {
		this.transCodeManager = transCodeManager;
	}

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}


	public String getRows() {
		return rows;
	}

	public void setRows(String rows) {
		this.rows = rows;
	}

	public String getPage() {
		return page;
	}

	public void setPage(String page) {
		this.page = page;
	}



}
加粗部分都是新添加或者修改的。
3、struts.xml

 <package name="admin" namespace="/admin" extends="json-default" >

       <action name="*-list" class="TransactionSystem.action.{1}Action" method="list">
       		<result type="json" >
       		<param name="root">resultObj</param>
       		</result>
       </action>

    </package> 

效果图





评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值