【问题标题】:Send parameter to controller on submit_tag rails在 submit_tag rails 上向控制器发送参数
【发布时间】:2013-06-06 17:45:27
【问题描述】:

我的表单上有两个 submit_tag,我想在每个表单上发送一个不同的参数。 我该怎么做?

我的表单视图:

<%= form_tag(some_path, :method => "get") do %>
   <%= text_field_tag :number %>
   <%= text_field_tag :name %>
   <%= submit_tag "Op01", class: "btn_search", my_parameter: 1 %>
   <%= submit_tag "Op02", class: "btn_search", my_parameter: 2 %>
<% end %>

在我的控制器上:

@oper_type = params[:my_parameter]

但是当我显示@oper_type 时,它​​总是为零。

谢谢。

【问题讨论】:

    标签: ruby-on-rails


    【解决方案1】:
    <%= submit_tag "Op01", class: "btn_search", value: 1 %>
    <%= submit_tag "Op01", class: "btn_search", value: 2 %>
    
    @oper_type = params[:commit] # 1 or 2
    

    或者简单一点

    <%= submit_tag "Op01", class: "btn_search" %>
    <%= submit_tag "Op01", class: "btn_search" %>
    
    @oper_type = params[:commit] # "Op01" or "Op02"
    

    【讨论】:

    • 也许答案已经过时,因为我需要使用类似:submit_tag 'Send', :name =&gt; 'MyParameter'
    【解决方案2】:

    有没有办法在不向用户显示提交按钮上的值的情况下完成此操作?假设您想在按钮上使用不同的文本并将隐藏值发送到控制器...

    【讨论】:

    • 我也想做同样的事情,但在文档中找不到解决方案。它必须在某个地方得到回答......
    猜你喜欢
    • 2011-07-03
    • 1970-01-01
    • 2021-08-27
    • 2020-01-24
    • 2014-12-23
    • 1970-01-01
    • 2015-11-21
    • 2010-12-05
    • 1970-01-01
    相关资源
    最近更新 更多