欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

jquery ajax分頁插件的簡單實現(xiàn)

 更新時間:2016年01月27日 08:54:46   投稿:lijiao  
這篇文章主要介紹了jquery ajax分頁插件的簡單實現(xiàn)的相關(guān)資料,需要的朋友可以參考下

說到基于jQuery的ajax分頁插件,那我們就先看看主要的代碼結(jié)構(gòu):

1、首先定義一個pager對象:

var sjPager = window.sjPager = {
  opts: {
   //默認屬性
   pageSize: 10,
   preText: "pre",
   nextText: "next",
   firstText: "First",
   lastText: "Last",
   shiftingLeft: 3,
   shiftingRight: 3,
   preLeast: 2,
   nextLeast: 2,
   showFirst: true,
   showLast: true,
   url: "",
   type: "POST",
   dataType: "JSON",
   searchParam: {},
   beforeSend: null,
   success: null,
   complete: null,
   error: function () {
    alert("抱歉,請求出錯,請重新請求!");
   },
  },
  pagerElement: null,//分頁dom元素
  commonHtmlText: {
   //公共文本變量
  },
  init: function (obj, op) {
   //對象初始化
  },
  doPage: function (index, pageSize, searchParam) {
   //執(zhí)行分頁方法
  },
  getTotalPage: function () {
   //獲取總頁數(shù)
  },
  createPreAndFirstBtn: function (pageTextArr) {
   //創(chuàng)建上一頁、首頁按鈕鏈接
  },
  createNextAndLastBtn: function (pageTextArr) {
   //創(chuàng)建下一頁、尾頁按鈕鏈接
  },
  createIndexBtn: function (pageTextArr) {
   //中間分頁索引按鈕鏈接
  },
  renderHtml: function (pageTextArr) {
   //渲染分頁控件到頁面
  },
  createSpan: function (text, className) {
   //創(chuàng)建span
  },
  createIndexText: function (index, text) {
   //創(chuàng)建索引文本
  },
  jumpToPage: function () {
   //跳轉(zhuǎn)到
  }
 }

對象包含了分頁的屬性及用到的方法,doPage()為分頁的核心方法。

2、進行jQuery擴展

$.fn.sjAjaxPager = function (option) {
    return sjPager.init($(this), option);
  };

3、插件使用

 <body>
   
  <table id="dataTable" border="1px"></table>
  <div id="pager"></div>

 </body>
$(function() {
   $('#pager').sjAjaxPager({
    url: "Handler1.ashx",
    pageSize: 10,
    searchParam: {
     /*
     * 如果有其他的查詢條件,直接在這里傳入即可
     */
     id: 1,
     name:'test',
    },
    beforeSend: function () {
    },
    success: function (data) {
     /*
     *返回的數(shù)據(jù)根據(jù)自己需要處理
     */
     var tableStr = "<tr><td>Id</td><td>姓名</td><td>年齡</td></tr>";
     $.each(data.items, function(i,v) {
      tableStr += "<tr><td>" + v.Id + "</td><td>" + v.Name + "</td><td>" + v.Age + "</td></tr>";
     });

     $('#dataTable').html(tableStr);
    },
    complete: function () {
    }
   });

   
  })

有沒有發(fā)現(xiàn)使用方式與直接使用ajax基本是一樣一樣的?

最后我們可以看下出來的效果:(表格樣式?jīng)]有設(shè)置比較丑,分頁樣式自己也可以根據(jù)需要修改css文件)

F12打開調(diào)試工具,點擊分頁查看發(fā)送的請求及響應(yīng):

  

  

  pageIndex和pageSize為插件默認的參數(shù),在后臺可以直接在Request中獲取。特別需要注意的是插件的響應(yīng)也是需要遵循特定的格式{"total":0,"items":[]},如上圖中所示total代表數(shù)據(jù)總記錄數(shù),items代表分頁的數(shù)據(jù)。

  這里只有代碼的大體結(jié)構(gòu)及呈現(xiàn)的效果,大家不妨自己先動手實現(xiàn)一下。

相關(guān)文章

最新評論