0

如果呈现表单的请求中包含 url 参数,我正在尝试使用 Embedded Ruby 在表单中包含隐藏字段。由于某种原因,无论是否存在 url 参数,都不会包含隐藏字段。它是 Rails 3.2 应用程序的一部分。对此的任何帮助将不胜感激。

这是我的 index.html.erb 视图中的相关表单:

<form action="/contacts" method="get" id="contacts-index">
  <input name="city" value="<%= params[:city] %>" type="hidden">
  <input name="state" value="<%= params[:state] %>" type="hidden">
  <input name="zip" value="<%= params[:zip] %>" type="hidden">
  <% if params[:fi_ase] == true or params[:fi_ase] == false %>
    <input name="fi_ase" value="<%= params[:fi_ase] %>" type="hidden">
  <% end %>
  <% if params[:fi_ame] == true or params[:fi_ame] == false %>
    <input name="fi_ame" value="<%= params[:fi_ame] %>" type="hidden">
  <% end %>
.
.
.
.
</form>

页面渲染得很好,但在向 /contacts?fi_ase=true&fi_ame=true 发送请求后,“fi_ase”和“fi_ame”隐藏字段不存在

4

3 回答 3

1

尝试:

<% if params[:fi_ase] == "true" or params[:fi_ase] == "false" %>
  <input name="fi_ase" value="<%= params[:fi_ase] %>" type="hidden">
<% end %>
<% if params[:fi_ame] == "true" or params[:fi_ame] == "false" %>
  <input name="fi_ame" value="<%= params[:fi_ame] %>" type="hidden">
<% end %>

参数值始终是字符串;

于 2013-01-31T06:17:30.283 回答
0
<%= hidden_field_tag('fi_ase', params[:fi_ase]) if params[:fi_ase] == "true" or params[:fi_ase] == "false" %> 
<%= hidden_field_tag('fi_ame', params[:fi_ame]) if params[:fi_ame] == "true" or params[:fi_ame] == "false" %>
于 2013-01-31T06:30:05.747 回答
0

是的

尝试这个,

<%= hidden_​​field_tag "some_id", @some %> 标签会帮助你..

于 2013-01-31T07:01:32.073 回答