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 に答える