<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
    主站蜘蛛池模板: 亚洲第一成年网站视频| 中文在线免费观看| 亚洲va中文字幕无码| 99免费在线视频| 亚洲人配人种jizz| 久久精品国产亚洲7777| 18禁无遮挡无码国产免费网站| 亚洲综合久久精品无码色欲| 亚洲综合色区在线观看| **一级毛片免费完整视| 国产亚洲精品美女久久久久| 亚洲国产日韩一区高清在线| 日本特黄特色aa大片免费| 日韩电影免费观看| 国产精品亚洲а∨天堂2021| 亚洲最新永久在线观看| 免费又黄又爽的视频| 99久久99热精品免费观看国产| 精品一区二区三区免费毛片| 中文字幕亚洲色图| 久久亚洲国产精品123区| 67194成是人免费无码| 黄色免费在线网站| 白白色免费在线视频| 亚洲一本之道高清乱码| 亚洲韩国精品无码一区二区三区| 日本成人免费在线| 99视频在线看观免费| WWW国产成人免费观看视频| 亚洲国产日韩综合久久精品| 亚洲精品国产成人99久久| 国产91久久久久久久免费| 国产亚洲色视频在线| 全免费a级毛片免费**视频| 久久免费高清视频| 国产成人亚洲综合一区 | 久久久亚洲精品国产| 五月天婷亚洲天综合网精品偷| 免费做爰猛烈吃奶摸视频在线观看| 久久九九AV免费精品| a级片免费在线观看|