在disable_with和send_data之后重新启用链接

时间:2018-02-17 02:20:37

标签: javascript ruby-on-rails download

我有以下链接:

<%= link_to download_media_partnership_path(@partner, m: m.id), data: {disable_with: "<i class='fa fa-spinner fa-spin media-icon'></i>"} do%>
  <i class="fa fa-download media-icon download" id=""></i>
<% end %>

单击时,它会在控制器中运行此方法:

def download_media
  @media = TeamMedia.find(params[:m])
  @file_data = open(@media.attachment.url)
  send_data @file_data.read, filename: "UH-#{@partner.subdomain.upcase}-#{@media.id}", type: @media.attachment.content_type, disposition: 'attachment'
end

此工作正常,但即使出现下载弹出框,仍会呈现disable_with。如果disable_with方法运行,我该如何删除send_data

1 个答案:

答案 0 :(得分:0)

尝试将以下内容添加到您的application.js

$.rails.enableElement($('a[data-disable-with]'));

如果您使用turbolinks,则会显示如下

$(document).on('page:change', function() {
   $.rails.enableElement($('a[data-disable-with]'));
});

希望有所帮助