Ruby on rails 使用JQueryMobile的Rails-使用send_数据进行双重渲染

Ruby on rails 使用JQueryMobile的Rails-使用send_数据进行双重渲染,ruby-on-rails,ruby,Ruby On Rails,Ruby,我在reports controller中使用以下代码动态创建csv文件: def exportCsv @report = Report.find(:all) csv = CSV.generate do |csv| csv << ["id","cod_user_id","city","address","urgent level","description"] @report.each do |r| csv <

我在reports controller中使用以下代码动态创建csv文件:

  def exportCsv
    @report = Report.find(:all)

     csv = CSV.generate do |csv|
       csv << ["id","cod_user_id","city","address","urgent level","description"]
       @report.each do |r|
        csv << [r.id,r.cod_user_id,r.city,r.address,r.urgent_level,r.description]
       end
      end

    send_data csv, :type => 'text/csv', :disposition => "attachment; filename=list.csv"
  end
def exportCsv
@报告=报告。查找(:全部)
csv=csv.generate do | csv|
csv“附件;文件名=list.csv”
结束
show.html.erb文件中的链接代码为:

<a href="<%=url_for :controller=>"reports",:action =>"exportCsv"%>">Clicca qui</a>

当我点击链接时,下载不会开始,出现一个白色页面。只有刷新白色页面,下载才会开始。当我点击下载链接时,我希望当前打开的页面保持打开状态并开始下载

更新I
我使用jquery.mobile-1.3.1如果我没有使用jquery-mobile-it-work,下载将开始,当前页面将保持打开状态,但是如果我使用jquery-mobile,链接将无法以正确的模式工作。

尝试使用以下方法:

send_data csv, :type => 'text/csv', :disposition => "attachment", :filename => "list.csv"
发送数据
文档():

将数据ajax=“false”添加到链接的属性中。默认情况下,jQuery Mobile中的链接是用Ajax加载的

<a data-ajax="false" href="<%=url_for :controller=>"reports",:action =>"exportCsv"%>">Clicca qui</a>


根据文档,您还可以使用rel=“external”,这也将阻止Ajax加载。两者的区别在于语义:当链接到域外的url时,应该使用rel=“external”,而data ajax=“false”用于内部链接。

我尝试过,但没有成功。如果单击链接后不刷新页面,下载将不会启动。问题是jquery会将答案移动起来并接受它,这也是说“太好了!它很有效!谢谢”的一种很好的方式:)我还建议更改问题标题,因为这不是RoR问题。你是对的,但我没有足够的信誉点投票给你的答案:(
<a data-ajax="false" href="<%=url_for :controller=>"reports",:action =>"exportCsv"%>">Clicca qui</a>