2011-06-18 12 views
0

私は、コントローラのアクションは次のようであるページpoweroutput.html.erbを持っている:アクションを呼び出し、jsからアクションに値を渡し、jsをレール3のページに再レンダリングするにはどうすればよいですか?

def poweroutput 

    # other stuff here... 

    if (request.xhr?) 
    @date = :date 
    respond_to do |format| 
     format.html 
    end 
    else 
     @date = Time.now.getlocal.strftime("%d.%m.%Y") 
    end 

end 

else句は、ページのロードに細かい実行されています。私は次のようである私のpoweroutput.html.erbのテキストフィールド要素の変化に実行するif句を期待しています:

<%= text_field_tag(
      'dt', nil, 
      { :id => 'date-field', 
      :class => 'dateformat-d-dt-m-dt-Y', 
      :value => Time.now.getlocal.strftime("%d.%m.%Y"), 
      :onchange => remote_function(
       :url => {:controller => 'pages', :action => 'poweroutput'}, :with => "'date=' + $('date-field').value"), 

      }) 
%> 

それでは、私は、テキストフィールドのOnChangeイベントが起こるしたいことは次のとおりです。( 1)コントローラーアクション、poweroutput、(2)このテキストフィールドの内容がコントローラアクションの@dateインスタンス変数に割り当てられ、(3)javascript(poweroutput.html.erb )は再レンダリングされます(正しい単語でさえも再レンダリングされますか?)。私は私がここで正しい道にいるかどうか確信していません。これを行うより良い方法があるかどうか教えてください。上記の非機能コードは、2日間のGoogle検索の単なる製品です。どんな助けでも大歓迎です。

答えて

関連する問題