发送文件后,使用不启用按钮禁用数据禁用

时间:2018-09-01 18:36:56

标签: ruby-on-rails ruby ujs

我正在构建一个仅处理请求json的Rails应用,并将信息返回给用户。我正在尝试使用data-disable-with属性,但是操作完成后,按钮未启用。 我正在请求一个端点和JSON响应,我将生成一个XLSX文件并发送给用户。
问题是发送文件后,该按钮未启用。

<%= form_for generate_report_path, url: generate_report_path(format: "xlsx"), method: :post do %>
 <div class="form-group">
 <%= label_tag(:dtInicio, "Data Inicio") %>
 <%= text_field_tag(:dtInicio, nil, class: "form-control datepicker", id: 'cpDtInicio', placeholder: "Pesquise a data inicio",  required: true) %>
 </div>
 <div class="form-group">
 <%= label_tag(:dtFinal, "Data Final") %>
 <%= text_field_tag(:dtFinal, nil, class: "form-control datepicker", id: 'cpDtFinal', placeholder: "Pesquise a data Final", required: true) %>
 </div>
 <%= button_tag("Download", class: "btn btn-dark", id: 'download', 'data-disable-with' => "<i class='fa fa-spinner fa-spin'></i> Gerando Relatório...")  %>
 <div class="col-md-12"></div>
<% end %>

在我的控制器上:

def generate_report
    begin_dt = Date.parse(params[:dtInicio]).strftime("%Y-%m-%d")
    end_dt = Date.parse(params[:dtFinal]).strftime("%Y-%m-%d")
    @info = JSON.parse(get_connection(begin_dt, end_dt))["information"]

    respond_to do |format|
      format.xlsx {        
        send_file generate_file, content_type: 'application/vnd.ms-excel', 
          filename: "#{Time.now.strftime('%Y%m%d%H%M%S%L')}.xlsx", :disposition => 'inline'
        }
    end
end

我已经尝试添加一个JS来启用,但是该页面没有为此JS重新加载。我迷路了,感谢您的帮助。

0 个答案:

没有答案