单击清除按钮时将变量传递给控制器

时间:2015-03-31 05:36:51

标签: ruby-on-rails

<%= form_tag({controller: "cc_banker_assignments", action: "index"}, method: "get", class: "form-horizontal") do %>
      <div class="col-md-4">
        <span class="badge badge-error count-error"></span>
        <div class="form-group">
          <label for="" class="col-sm-4 control-label">Date of Assignment</label>
          <div class="col-sm-7">
            <%= text_field_tag "assignment_date", params[:assignment_date], class: "form-control", id: "date-range" %>
          </div>
        </div>
        <div class="form-group" style="margin-bottom: 1.5em;">
          <label for="" class="col-sm-4 control-label">Assigned To</label>
          <div class="col-sm-7">
            <%= select_tag "assigned_to", options_from_collection_for_select(@banker, :id, :name, params[:assigned_to]), class: 'form-control single-select', prompt: "All Bankers" %>
          </div>
        </div>
<div class="col-sm-8 pull-right" style="margin-top: -0.3em">
            <%= submit_tag "Search", :class => "btn btn-default lender-search-btn btn-s-layout" %>
            <%= button_tag "Clear", :type => 'reset', :class => "btn btn-primary btn-c-layout clear_button", :onClick => "check_for_cancel" %> 
          </div>
        </div>
      </div>
    <% end %>

好的,所以我有这个表单,我希望能够在我点击按钮时将变量传递给我的控制器上的索引方法。

这是因为我希望我的控制器知道是否已经点击了清除按钮,而我唯一的办法是将变量传递给我的控制器索引方法。

我的控制器方法

def index


    @banker = Banker.where("locked_at is null and approved = true").order('name asc')

    ap params
    if !params[:get_status].nil?
      params[:banker_status] = BankerAssignmentStatus.where("assignment_status =? ",params[:get_status]).pluck(:id)
    end
    search_banker_assignment params

    render template: 'cc_banker_assignments/index'
  end

我如何使用rails

执行此操作

1 个答案:

答案 0 :(得分:0)

您是否尝试通过请求索引页来清除表单输入?您可以使用link_to而不是button_tag来执行此操作,或只使用javascript。如果您确实想将变量传递给控制器​​,可以将按钮绑定到jQuery.ajax()调用。