最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Ajax分頁插件Pagination從前臺jQuery到后端java總結(jié)

 更新時間:2016年07月22日 09:35:33   作者:牧云云hhh  
這篇文章主要從前臺jQuery到后java端總結(jié)了Ajax分頁插件Pagination的使用方法和技巧,感興趣的小伙伴們可以參考一下

困惑了我一段時間的網(wǎng)頁分頁,今天特地整理了一下我完成不久的項目。下面我要分享下我這個項目的分頁代碼,前后端通吃。希望前輩多多指教。

一、效果圖

下面我先上網(wǎng)頁前臺和管理端的部分分頁效果圖,他們用的是一套代碼。

二、上代碼前的一些知識點

此jQuery插件為Ajax分頁插件,一次性加載,故分頁切換時無刷新與延遲,如果數(shù)據(jù)量較大不建議用此方法,因為加載會比較慢。

三、前臺代碼部分

var pageSize =6; //每頁顯示多少條記錄
var total; //總共多少記錄
 $(function() {
 Init(0); //注意參數(shù),初始頁面默認(rèn)傳到后臺的參數(shù),第一頁是0; 
 $("#Pagination").pagination(total, { //total不能少 
 callback: PageCallback, 
 prev_text: '上一頁', 
 next_text: '下一頁', 
 items_per_page: pageSize, 
 num_display_entries: 4, //連續(xù)分頁主體部分顯示的分頁條目數(shù)
 num_edge_entries: 1, //兩側(cè)顯示的首尾分頁的條目數(shù) 
 }); 
 function PageCallback(index, jq) { //前一個表示您當(dāng)前點擊的那個分頁的頁數(shù)索引值,后一個參數(shù)表示裝載容器。 
 Init(index); 
 }
 });
 
 function Init(pageIndex){ //這個參數(shù)就是點擊的那個分頁的頁數(shù)索引值,第一頁為0,上面提到了,下面這部分就是AJAX傳值了。
 $.ajax({
 type: "post",
 url:"../getContentPaixuServ?Cat="+str+"&rows="+pageSize+"&page="+pageIndex,
 async: false,
 dataType: "json",
 success: function (data) {
 $(".neirong").empty();
/* total = data.total; */
 var array = data.rows;
 for(var i=0;i<array.length;i++){
 var info=array[i];
 
 if(info.refPic != null){
 $(".neirong").append('<dl><h3><a href="'+info.CntURL+'?ContentId='+info.contentId+'" title="'+info.caption+'" >'+info.caption+'</a></h3><dt><a href="sjjm.jsp?ContentId='+info.contentId+'" title="'+info.caption+'" ><img src="<%=basePathPic%>'+info.refPic+'" alt="'+info.caption+' width="150" height="95""></a></dt> <dd class="shortdd">'+info.text+'</dd><span>發(fā)布時間:'+info.createDate+'</span></dl>') 
 }else{
 $(".neirong").append('<dl ><h3><a href="'+info.CntURL+'?ContentId='+info.contentId+'" title="'+info.caption+'" >'+info.caption+'</a></h3><dd class="shortdd">'+info.text+'</dd><span>發(fā)布時間:'+info.createDate+'</span></dl>');
 };
 } 
 },
 error: function () {
 alert("請求超時,請重試!");
 }
 }); 
};

四、后臺部分(java)
我用的是MVC 3層模型

servlet部分: (可以跳過)

public void doPost(HttpServletRequest request, HttpServletResponse response)
 throws ServletException, IOException {

 response.setContentType("text/html;charset=utf-8");
 PrintWriter out = response.getWriter();
 //獲取分頁參數(shù)
 String p=request.getParameter("page"); //當(dāng)前第幾頁(點擊獲取)
 int page=Integer.parseInt(p);
 
 String row=request.getParameter("rows"); //每頁顯示多少條記錄
 int rows=Integer.parseInt(row);
 
 String s=request.getParameter("Cat"); //欄目ID
 int indexId=Integer.parseInt(s);
 JSONObject object=(new ContentService()).getContentPaiXuById(indexId, page, rows); 
 out.print(object);
 out.flush();
 out.close();
 }

Service部分:(可以跳過)

public JSONObject getContentPaiXuById(int indexId, int page, int rows) {
 JSONArray array=new JSONArray();
 List<Content>contentlist1=(new ContentDao()).selectIndexById(indexId);
 List<Content>contentlist=paginationContent(contentlist1,page,rows);
 for(Content content:contentlist){
 JSONObject object=new JSONObject();
 object.put("contentId", content.getContentId());
 object.put("caption", content.getCaption());
 object.put("createDate", content.getCreateDate());
 object.put("times", String.valueOf(content.getTimes()));
 object.put("source", content.getSource());
 object.put("text", content.getText());
 object.put("pic", content.getPic());
 object.put("refPic", content.getRefPic());
 object.put("hot", content.getHot());
 object.put("userId", content.getAuthorId().getUserId());
 int id = content.getAuthorId().getUserId();
 String ShowName = (new UserService()).selectUserById(id).getString("ShowName");
 object.put("showName", ShowName);
 array.add(object);
 
 }
 JSONObject obj=new JSONObject();
 obj.put("total", contentlist1.size());
 obj.put("rows", array);
 return obj;
 }

獲取出每頁的的起止id(這部分是重點),同樣寫在Service中,比如說假設(shè)一頁有6條內(nèi)容,那么第一頁的id是從1到6,第二頁的id是從7到12,以此類推

//獲取出每頁的內(nèi)容 從哪個ID開始到哪個ID結(jié)束。
 private List<Content> paginationContent(List<Content> list,int page,int rows){
 List<Content>small=new ArrayList<Content>();
 int beginIndex=rows*page; //rows是每頁顯示的內(nèi)容數(shù),page就是我前面強(qiáng)調(diào)多次的點擊的分頁的頁數(shù)的索引值,第一頁為0,這樣子下面就好理解了!
 System.out.println(beginIndex);
 int endIndex;
 if(rows*(page+1)>list.size()){ 
 endIndex=list.size(); 
 }
 else{
 endIndex=rows*(page+1);
 }
 for(int i=beginIndex;i<endIndex;i++){ 
 small.add(list.get(i)); 
 } 
 return small;
 }

Dao層: (可以跳過)

public List selectIndexById(int indexId){
 List<Content>list=new ArrayList<Content>();
 try{
 conn = DBConn.getCon();
 String sql = "select * from T_Content,T_User where T_Content.AuthorId = T_User.UserId and CatlogId=? order by CreateDate desc";
 pstm = conn.prepareStatement(sql);
 pstm.setInt(1, indexId);
 rs = pstm.executeQuery();
 SimpleDateFormat ff=new SimpleDateFormat("yyyy年MM月dd日 hh時mm分");
 while(rs.next()){
 Content content = new Content();
 content.setContentId(rs.getInt("ContentId"));
  content.setCaption(rs.getString("Caption"));
  content.setCreateDate(f.format(rs.getTimestamp("CreateDate")));
  content.setTimes(rs.getInt("Times"));
  content.setSource(rs.getString("Source"));
  content.setText(rs.getString("Text"));
  content.setPic(rs.getString("Pic"));
  content.setRefPic(rs.getString("RefPic"));
  content.setHot(rs.getInt("Hot"));
  User user = new User();
  user.setUserId(rs.getInt("UserId"));
  content.setAuthorId(user);
  Catlog catlog = new Catlog(); //CntURL待開發(fā)
  catlog.setCatlogId(rs.getInt("CatlogId"));
  content.setCatlog(catlog);
  list.add(content);
 }
 }catch(Exception e){
 e.printStackTrace();
 }finally{
 DBConn.closeDB(conn, pstm, rs);
 }
 return list;
 }

精彩專題分享:jquery分頁功能操作  JavaScript分頁功能操作

以上就是網(wǎng)頁所實現(xiàn)的分頁代碼,easy-ui部分的分頁也可以參考以上代碼。

相關(guān)文章

  • Jquery對新插入的節(jié)點 綁定Click事件失效的解決方法

    Jquery對新插入的節(jié)點 綁定Click事件失效的解決方法

    下面小編就為大家?guī)硪黄狫query對新插入的節(jié)點 綁定Click事件失效的解決方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-06-06
  • jquery網(wǎng)頁回到頂部效果(圖標(biāo)漸隱,自寫)

    jquery網(wǎng)頁回到頂部效果(圖標(biāo)漸隱,自寫)

    當(dāng)網(wǎng)頁內(nèi)容草雞多的時候,用戶就需要有個按鈕快速回到頂部,于是用js來實現(xiàn)下,畫布多說,直接上代碼
    2014-06-06
  • jQuery插件multiScroll實現(xiàn)全屏鼠標(biāo)滾動切換頁面特效

    jQuery插件multiScroll實現(xiàn)全屏鼠標(biāo)滾動切換頁面特效

    本文給大家分享的是一款jQuery整屏(全屏)滾動插件網(wǎng)頁特效,滾動鼠標(biāo)滾輪整屏一屏滾動切換代碼,可設(shè)置文字/圖片絕對上下左右居中顯示JS代碼,時下最流行的jQuery全屏滾動插件!(兼容測試:IE6及以上、Firefox、Chrome、Opera、Safari、360等主流瀏覽器)
    2015-04-04
  • jQuery獲取動態(tài)添加元素的方法詳解

    jQuery獲取動態(tài)添加元素的方法詳解

    這篇文章主要介紹了jQuery獲取動態(tài)添加元素的方法詳解,jQuery 是一個高效、精簡并且功能豐富的 JavaScript 工具庫,它提供的 API 易于使用且兼容眾多瀏覽器,這讓諸如 HTML 文檔遍歷和操作、事件處理、動畫和 Ajax 操作更加簡單,需要的朋友可以參考下
    2023-08-08
  • jQuery實現(xiàn)下拉菜單的實例代碼

    jQuery實現(xiàn)下拉菜單的實例代碼

    本文通過實例代碼給大家講解了jQuery實現(xiàn)下拉菜單效果,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-06-06
  • jQuery實現(xiàn)網(wǎng)頁頂部固定導(dǎo)航效果代碼

    jQuery實現(xiàn)網(wǎng)頁頂部固定導(dǎo)航效果代碼

    這篇文章主要介紹了jQuery實現(xiàn)網(wǎng)頁頂部固定導(dǎo)航效果代碼,涉及jQuery響應(yīng)scroll事件動態(tài)操作頁面元素樣式的相關(guān)技巧,需要的朋友可以參考下
    2015-12-12
  • jQuery插件zTree實現(xiàn)刪除樹子節(jié)點的方法示例

    jQuery插件zTree實現(xiàn)刪除樹子節(jié)點的方法示例

    這篇文章主要介紹了jQuery插件zTree實現(xiàn)刪除樹子節(jié)點的方法,結(jié)合實例形式分析了jQuery樹形插件zTree針對節(jié)點的遍歷與刪除操作相關(guān)技巧,需要的朋友可以參考下
    2017-03-03
  • JQuery選擇器詳解

    JQuery選擇器詳解

    這篇文章主要為大家介紹了JQuery選擇器,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-12-12
  • jquery獲取鏈接地址和跳轉(zhuǎn)詳解(推薦)

    jquery獲取鏈接地址和跳轉(zhuǎn)詳解(推薦)

    這篇文章主要介紹了jquery獲取鏈接地址和跳轉(zhuǎn),具體操作步驟大家可查看下文詳細(xì)講解,感興趣的小伙伴們可以參考一下。
    2017-08-08
  • jQuery解析json數(shù)據(jù)實例分析

    jQuery解析json數(shù)據(jù)實例分析

    這篇文章主要介紹了jQuery解析json數(shù)據(jù)的具體實現(xiàn)方法,結(jié)合實例形式較為詳細(xì)的分析了jQuery解析json格式數(shù)據(jù)的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-11-11

最新評論

洞口县| 秦安县| 西乌珠穆沁旗| 襄城县| 德清县| 房产| 渝中区| 洪洞县| 丰城市| 中方县| 渭南市| 司法| 武强县| 长岭县| 绥芬河市| 安阳市| 江津市| 海丰县| 泗阳县| 偏关县| 门头沟区| 迭部县| 乡宁县| 金塔县| 六枝特区| 思茅市| 大新县| 沂源县| 南靖县| 岢岚县| 丰都县| 古田县| 甘孜| 华坪县| 集安市| 斗六市| 什邡市| 页游| 尤溪县| 武清区| 遂川县|