rails ajax 分页 带参数

本文介绍了一种使用Rails框架中的will_paginate插件实现远程分页的方法。通过在application_helper.rb文件中定义will_paginate_remote辅助方法,可以为分页链接添加AJAX更新功能。这种方法避免了页面的完全刷新,提升了用户体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 在application_helper.r中定义will_paginate_remote helper:

def will_paginate_remote(paginator, options={})
  update = options.delete(:update)
  url = options.delete(:url)
  params = options.delete(:params)
  str = will_paginate(paginator, options)
  if str != nil
    str.gsub(/href="(.*?)"/) do
      "href=\"#\" onclick=\"new Ajax.Updater('" + update + "', '" + (url ? url +$1.sub(/[^\?]*/, '')+ params.to_s : $1) +
      "', {asynchronous:true, evalScripts:true, method:'get'}); return false;\""
    end
  end
end

 2. 在view中调用will_paginate_remote:

<%= will_paginate_remote(@knowledges,:class=>'meneame',:update=>'aa01', :url=>"/diarys/pages",:params=>'&lb=knowledges',:prev_label   => '<',
  :next_label   => '>')%>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值