easyui頁面上字段排序並與后台交互


在開始對easyui里面頁面上進行排序,感覺應該不怎么難,但是在操作的時候並沒有那么簡單,上網也查了很多進行排序的方法,最終總結出這個方法,供大家參考使用:

一、在easyui里面上只需

1.將要進行排序的字段添加一個屬性(sortable="true");

2.將要排序的table添加一個屬性(remoteSort="true");

3.如果只想在頁面進行排序,而不再數據庫里面進行排序;也就是說只需要對頁面上查出來的當前頁面上的幾行數據進行排序,而不是對頁面上所有頁的數據進行排序的話

  就只需要在添加一個頁面排序刷新頁面table(datagrid)的js方法就行了 

function alertColumn(sort,order){
$("#dg").datagrid("reload");
}

在頁面進行排序,只需要這三步進行了,頁面整體修改布局如下:

 

二、如果想對所有分頁里面的進行排序,就還需要在后台添加幾段代碼:

//給前端頁面進行排序

/*這里的參數sort/order不能進行修改,這是easyui里面封裝好的數據,直接在后台就行獲取進行了*/
String sort=request.getParameter("sort");
System.out.println("排序字段名="+sort);//打樁輸出要排序的字段名
String order=request.getParameter("order");
System.out.println("排序順序="+order);//打樁要輸出的字段名的排序屬性,要么是"asc"(升序)要么是"desc"(降序)

/*下面這兩行代碼是對頁面上可以排序字段是否被點中進行判斷,如果點中了就是以order為順序,sort為字段名進行排序,否則就是以desc為順序,以user_id為字段名進行排序*/
order = (StringUtils.defaultString(order).length()==0)?"desc":order;
sort = (StringUtils.defaultString(sort).length()==0)?"user_id":sort;

/*創建一個字符緩沖流對sort和order進行拼接,最終的效果就是====>sort order*/
StringBuffer ordersb = new StringBuffer();
ordersb.append(sort).append(" ").append(order);
//最后就把拼接成的字符串以sortt為變量名稱傳到sql映射文件中,只要獲取sortt就行

param.put("sortt",ordersb.toString());

三、修改sql映射文件中sql語句的排序方法

下面就是截圖:

其他地方都不需要進行改動,這樣對所有的數據進行排序就成功了,有什么不足,麻煩您告訴我

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM