Rails动态变量在link_to与JS

时间:2013-02-18 05:55:39

标签: javascript ruby-on-rails ruby-on-rails-3.2 link-to

我有一个表单来显示来自某个过滤器表单的所有列表和js以及另一个指向同一控制器上的另一个操作的按钮但是仍然带有表单过滤器的值。 对于js事情做得很好,但对于另一个按钮,我仍然感到困惑。

我的BalanceTransactions控制器:

def end_period
  #some coding
  respond_to do |format|
    format.html
    format.js
  end
end

def end_period_close
  year=params[:year]

  respond_to do |format|
    format.html { redirect to goal_path }
  end
end

我的end_period.html.erb:

<%= form_tag end_period_balance_transactions_path, :method => "get", :id => "headers_search" do %>
  <td><%= select_year(Date.today, :prompt => 'Choose year') %></td>
  <td><%= submit_tag "Check", :name => nil, :class => "btn btn-info", :remote => true %></td>
  <td><%= link_to "Close", nil, :id => "close_button", :class => "btn btn-danger" %></td>
<% end %>

<%= render :partial => 'end_period_table' %>

当我点击[Check]按钮时,rails会重新渲染部分,并且它可以很好地处理过滤器。而且我仍然对如何为[关闭]按钮提供[year] dynamicaly感到困惑。

我也尝试使用balance_transactions.js.coffe,其中:     $ - &gt;
      $(“#close_button”)。点击 - &gt;       年= $(“#date_year”)。val()       $ .get(“end_period_close”,{year:year})

对不起的问题和语法表示歉意,请先发帖。

谢谢并尊重, Kristono Sugiarto

1 个答案:

答案 0 :(得分:0)

尝试这个

$ ->
  $('#close_button').click ->
    $.ajax
      url: 'your url here' # appending .erb to the filename gives you access to named routes
      data:
        year: $('#date_year').val()