7

入力した日付に基づく検索フィールドがあります。

問題は、フォームを送信するたびに検索結果が表示されますが、ページがリロードされると検索文字列がフィールドから消えてしまうことです。

フィールドに検索文字列を保持する方法を教えてください。

私はルビーフォームを使用しており、以下はコードです..

<%=form_for :messages, url: url_for( :controller => :time_sheets, :action => :late ), :html => { :id => "submitForm1" } do |f| %>
        <div class="field">
             <tr>   
                <td> From Date <%= f.text_field :leaveFrom, :id => 'datepicker2', :class => 'phcolor','data-validation' =>'required', :readonly => true %></td>
                <td> To Date <%= f.text_field :leaveTo, :id => 'datepicker7', :class => 'phcolor', :readonly => true %></td>
                <td >Late Time<%= f.text_field :on_duty, :id => 'timepicker5' %></td>
                <div class="actions">
                  <td style="position: absolute;right: 178px;"><input type="button"  class="btn btn-primary" id="submitid" tabindex="7" value="Go"></td>
                </div>
            </tr>
        </div>
<% end %>
4

2 に答える 2

1

あなたのコードは、フォーム内のフィールドのデータを保持form_for :messagesするインスタンス変数があることを示唆しています。@messages有効なものはあります@messagesか?

メッセージのモデルがない場合は、簡単な回避策を考えます。これをアクションに追加できます。

@messages = OpenStruct.new(params[:messages])

または、 に置き換えform_forform_tag、params から各フィールドの値を設定します。form_for「フィールドの値について質問するためのベースとして使用される特定のモデル オブジェクトの周りにフォームとスコープを作成します。」、これはここでは適していません。

于 2012-11-16T12:19:33.657 に答える
1

フォームがどのモデルにも関連していない場合は、form_tagヘルパーなどを使用します。次に、次のようにします。

<%= text_field_tag :leaveFrom, params[:leaveFrom], :id => 'datepicker2', :class => 'phcolor','data-validation' =>'required', :readonly => true %>
于 2012-11-16T12:26:08.037 に答える