4

我在rails 3應用上使用了will_paginate寶石。現在,它正確分頁,並顯示列表底部的所有頁碼以及上一個和下一個按鈕。Rails:will_paginate「顯示下一個10」按鈕?

我不希望顯示頁碼,而是希望頁面的行爲像Facebook新聞提要一樣。也就是說,如果我在當前頁面上顯示10個項目,並且用戶單擊「下一個」按鈕,則頁面應該向下延伸,並且總共顯示20個項目。我正在尋找一種方法來修改will_paginate寶石或使用AJAX來實現這一點。

回答

8

按照這些用於顯示按鈕的點擊更多結果:

  • 不要在意見
  • 使用AJAX使用will_paginate標籤爲獲取下一個結果集上的「下一個」鏈接
  • 點擊

下面的代碼將刪除頁碼和只顯示next和prev按鈕:

<%= will_paginate @posts, :page_links => false %> 

你可以找到更多樣式進行分頁here

與樣品AJAX編輯:

1,創建具有頁碼爲隱藏字段

<%= form_tag url, :id => :filter, :method => :get do%> 
    <%= hidden_field_tag :page, page %> 
<% end %> 

2.添加針對跨距形式「More」

<span class='more-results' >More</span> 

3.用於綁定點擊和AJAX子項的JavaScript函數t的形式

function bindMoreResults() { 
    jQuery("span.more-results").unbind("click"); 
    jQuery("span.more-results").click(
     function(e){ 
      e.preventDefault(); 
      getMoreResults(); 
     }); 
} 

function getMoreResults() { 
    jQuery('span.more-results').hide(); 
    var page_value = parseInt(jQuery("form#filter #page").val()) + 1; 
    jQuery("form#filter #page").val(page_value); 
    var form = jQuery("form#filter"); 
    jQuery.getJSON(
     form.attr("action") + ".json", 
     form.serialize(), 
     appendData 
    ); 
} 

function appendData(data) { 
    jQuery('span.more-results').show(); 
//parse the data and append it 
} 

4.相應地修改appendData。點擊這裏查看更多關於getJSON的信息:http://api.jquery.com/jQuery.getJSON/

+1

我的意思是我需要關於如何實現AJAX部分的細節。 –

+1

@Ankit Soni,增加了AJAX部分的細節。 – leenasn

相關問題