2013-08-01 35 views
0

下面是我的分頁代碼,我試圖給它自己添加一個分頁器,但它總是顯示1條記錄,當它爲零時,它不會正確計數它們,它不會更新結果萎縮(通過我的搜索代碼,只是調用PAGINATE功能(我試過ATLEAST哈哈)分頁計數器不計數正確或更新

也是我想知道尋呼機插入,而不是之前或之後,我可以把它插入一個佔位符DIV裏面?

function paginate(table) { 
    $(table).each(function() { 
     var currentPage = 0; 
     var numPerPage = 30; 
     var pageCount = 0; 
     var pageNo = 0; 

     var $table = $(this); 
     $table.bind('repaginate', function() { 
      $table.children('tbody').children('tr:not(.exclude)').hide().slice(currentPage * numPerPage, (currentPage + 1) * numPerPage).show(); 
     }); 
     $table.trigger('repaginate'); 
     var numRows = $table.children('tbody').children('tr:not(.exclude)').length; 

     var numPages = Math.ceil(numRows/numPerPage); 
     var $pager = $('<div id="pager" class="pager"></div>'); 
     for (var page = 0; page < numPages; page++) { 
      $('<span class="page-number"></span>').text(page + 1).bind('click', { 
       newPage: page 
      }, function (event) { 
       currentPage = event.data['newPage']; 
       $table.trigger('repaginate'); 
       $(this).addClass('active').siblings().removeClass('active'); 
      }).appendTo($pager).addClass('clickable'); 
     } 
     // Clear the old pager first 
     $('#pager').remove(); 
     $pager.insertBefore($table).find('span.page-number:first').addClass('active'); 
     //Clear the old counter 
     $('#counter').remove(); 
     if (numRows < numPerPage) { 
      pageCount = numRows; 
      pageNo = 1; 
     } 
     else { 
      pageCount = currentPage + numPerPage; 
      pageNo = (numPerPage * currentPage) + 1; 
     } 
     var $counter = $('<div id="counter">Showing ' + pageNo + ' to ' + pageCount + ' of ' + numRows + ' Records</div>'); 
     $counter.insertBefore($pager); 
    }); 
} 

function searchPagingTable(inputVal, tablename, fixedsearch, exclude) { 
    var table = $(tablename); 
    table.find('tr:not(.header)').each(function (index, row) { 
     var allCells = $(row).find('td'); 
     if (allCells.length > 0) { 
      var found = false; 
      allCells.each(function (index, td) { 
       if (fixedsearch == 1 || exclude.length > 0) { 
        var regExp = new RegExp("\\b" + inputVal + "\\b"); 
       } 
       else { 
        var regExp = new RegExp(inputVal, 'i'); 
       } 
       if (regExp.test($(td).text())) { 
        found = true; 
        return false; 
       } 
      }); 
      if (exclude.length > 0) { 
       if (found == true) $(row).hide().addClass('exclude'); else $(row).show().removeClass('exclude'); 
      } 
      else { 
       if (found == true) $(row).show().removeClass('exclude'); else $(row).hide().addClass('exclude'); 
      } 
     } 
    }); 
    paginate(); 
} 

回答

0

我建議您使用http://datatables.net/ 它確實希望您嘗試通過查看您的代碼創建

+0

我之前使用過這個,它添加了太多我不需要的東西,即時通訊使用mvc應用程序,所以我只想要從尋呼和搜索中獲得有限的functionanilty – AlexW