Rails:表单上有两个相同的提交按钮

时间:2018-02-25 10:37:32

标签: ruby-on-rails forms

我有一个表单,但由于设计我不能在移动设备和网络上使用相同的按钮。我创建了两个按钮,一个隐藏在手机上,一个隐藏在桌面上。但是,其中一个不起作用。

有没有办法让两个提交按钮做同样的事情?我找到了很多例子,其中两个提交按钮做了不同的事情。我看起来像这样:

<%= form_tag form_path, class: "form", method: "GET" do %>
  <%= check_box_tag(:pet_dog) %>
  <%= label_tag(:pet_dog, "I own a dog") %>
  <%= check_box_tag(:pet_cat) %>
  <%= label_tag(:pet_cat, "I own a cat") %>

  <%= button_tag class:"mobile button" do%>
    SUBMIT
  <% end %>

  <%= button_tag class:"desktop button" do%>
    SUBMIT
  <% end %>
<% end %>

2 个答案:

答案 0 :(得分:0)

尝试为表单添加ID:

form_tag form_path, class: "form", id: "my_form" method: "GET"

并在您的按钮中添加form属性:

<%= button_tag class:"mobile button", form: "my_form" do%>
  SUBMIT
<% end %>

<%= button_tag class:"desktop button", form: "my_form" do%>
  SUBMIT
<% end %>

答案 1 :(得分:0)

您可以安装:https://github.com/fnando/browser 并尝试使用:

<%= button_tag class: "#{browser.mobile? ? 'mobile' : 'desktop'} button" do%>
  SUBMIT
<% end %>