<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    子在川上曰

      逝者如斯夫不舍晝夜
    隨筆 - 71, 文章 - 0, 評論 - 915, 引用 - 0
    數據加載中……

    rails中使用ajax時的分頁實現

    關于分頁可以參考這篇文章:http://ruby-lang.org.cn/forums/viewthread.php?tid=206&extra=page%3D1&page=2

    但如果使用ajax則分頁的實現需要改動一下,如下所示。

          共<b><%=@article_pages.page_count%></b>頁:&nbsp;

          
    <%=if @article_pages.current!=@article_pages.first_page
             link_to_remote(
    "首頁",:update => "articleList",
                :url 
    => {:action => 'list',:subcategory_id => @subcategory.id,:page => @article_pages.first_page})
          
    else
          
    "首頁"
          end
    %>

          
    <%=if @article_pages.current.previous
          link_to_remote(
    "上一頁",:update => "articleList",
              :url 
    => {:action => 'list',:subcategory_id => @subcategory.id,:page => @article_pages.current.previous})
          
    else
          
    "上一頁"
          end 
    -%>



          
    <%=pagination_links_each(@article_pages, :window_size => 5do | page |
          link_to_remote(
    "[#{page}]", :update => "articleList",
                               :url 
    => {:action => 'list',:subcategory_id => @subcategory.id,:page => page}) 
          end
    %>

          
    <%=if @article_pages.current.next
          link_to_remote(
    "下一頁",:update => "articleList",
                    :url 
    => {:action => 'list',:subcategory_id => @subcategory.id,:page => @article_pages.current.next})
          
    else
          
    "下一頁"
          end 
    -%>

          
    <%=if @article_pages.current!=@article_pages.last_page
          link_to_remote(
    "末頁",:update => "articleList",
          :url 
    => {:action => 'list',:subcategory_id => @subcategory.id,:page => @article_pages.last_page})
          
    else
          
    "末頁"
          end
    %>


    然后再優化一下,把這些代碼提取成一個公共函數,放在application_helper里,以便其他頁面也能共享。代碼如下:

      def ajax_pagination_links(pages,update,url)
        links 
    = []
        links 
    << "共<b>#{pages.page_count}</b>頁"
        
    return links[0if pages.page_count==1
        links 
    << ":&nbsp;"

        
    if pages.current!=pages.first_page
          url[:page] 
    = pages.first_page
          links 
    << link_to_remote("首頁", :update => update, :url => url)
        
    else
          links 
    << "首頁"
        end
     
        
    if pages.current.previous
          url[:page] 
    = pages.current.previous
          links 
    << link_to_remote("上一頁", :update => update, :url => url)
        
    else
          links 
    << "上一頁"
        end

        links 
    << pagination_links_each(pages, :window_size => 5do |page|
                    url[:page] 
    = page
                    link_to_remote(
    "[#{page}]", :update => update, :url => url) 
                end

        
    if pages.current.next
          url[:page] 
    = pages.current.next
          links 
    << link_to_remote("下一頁",:update => update, :url => url)
        
    else
          links 
    << "下一頁"
        end

        
    if pages.current!=pages.last_page
          url[:page] 
    = pages.last_page
          links 
    << link_to_remote("末頁",:update => update, :url => url)
        
    else
          links 
    << "末頁"
        end
        
        links.join(
    " ")
      end

    以后在頁面里只需要加上這樣一句即可
         <%=ajax_pagination_links(@article_pages, "articleList", {:action => 'list',:subcategory_id => @subcategory.id})%>

    posted on 2007-07-30 17:53 陳剛 閱讀(1619) 評論(4)  編輯  收藏 所屬分類: Rails&Ruby

    評論

    # re: rails中使用ajax時的分頁實現  回復  更多評論   

    cool.

    非常好的一個實現, 謝謝你偉大的工作.
    2007-12-25 10:08 | sixfooter

    # re: rails中使用ajax時的分頁實現[未登錄]  回復  更多評論   

    干的漂亮,謝謝分享。
    2007-12-27 22:37 | daiiing

    # re: rails中使用ajax時的分頁實現  回復  更多評論   

    為什么不能用啊,我用
    <%=ajax_pagination_links(@paper_pages, "contrast_paper_list", {:action => 'paper_contrast'})%>,生成的頁面如下(末頁):

    <a onclick="new Ajax.Updater('contrast_paper_list', '/paper/paper_contrast?page=2', {asynchronous:true, evalScripts:true}); return false;" href="#">末頁</a>
    但是我看是連接到http://localhost:3001/paper/paper_contrast#這頁面的,我是把分頁的那一塊做成一個partail,我不知道action是不是就跟普通的pagination的寫法一樣啊。
    2008-02-29 11:12 | magiclin

    # re: rails中使用ajax時的分頁實現  回復  更多評論   

    :subcategory_id => @subcategory.id有什么用啊,想不通
    2008-02-29 11:24 | magiclin
    主站蜘蛛池模板: 亚洲国产精华液网站w| 午夜国产精品免费观看| 国产又粗又长又硬免费视频| 2020久久精品亚洲热综合一本| 性色午夜视频免费男人的天堂| 中文字幕亚洲综合久久男男| 国产99视频精品免费视频76| 国产麻豆免费观看91| 亚洲AV成人无码久久WWW| 99热在线精品免费全部my| 亚洲国产精品日韩在线| 最近免费2019中文字幕大全| 亚洲国产成人久久三区| 国产在线观看片a免费观看| 亚洲国产精品无码久久久| 亚洲第一成年免费网站| 亚洲国产成人AV在线播放| 永久免费观看的毛片的网站| 牛牛在线精品免费视频观看| 久久久久亚洲AV成人网人人网站| 中文字幕视频免费在线观看| 久久综合日韩亚洲精品色| 亚洲毛片免费观看| 日韩亚洲国产高清免费视频| 四虎永久免费影院| 国产做国产爱免费视频| 亚洲成色999久久网站| 欧美a级在线现免费观看| 在线观看亚洲视频| 国产亚洲免费的视频看| 67194熟妇在线永久免费观看 | 免费观看成人毛片a片2008| 亚洲人成人网站18禁| 亚洲AV网站在线观看| 久久精品免费一区二区三区| 亚洲理论片中文字幕电影| 午夜男人一级毛片免费| xxxxx做受大片在线观看免费| 色婷婷亚洲十月十月色天| 天天摸夜夜摸成人免费视频| 国产精品高清免费网站|