2016-05-16 5 views
0

選択した要素の値を取得する方法。スパンで表示する変数に保存します。私はデータベースに直接保存しようとしました。データベースは選択した値も保存しません。選択した値radio_button rails

... 
<%= f.collection_radio_buttons(:route_id, Route.all, :id, :time_trip, {}, {name: "timeselect", class: "timeselect"}) %> 
... 
<span id="timevalue"></span> 

jqueryのちょうどそれがパラメータに影響しますので、非常に良いアイデアではありません選択できるようにnameオプションをオーバーライド

(document).ready(function() { 

$('input[name="timeselect"]:radio').change(function(){ 

     var str3=""; 
     $('input[name="timeselect"]:checked').val(); 
      str3 += $(this).text() + "\n"; 

     $("#timevalue").text(); 
    }); 
}); 

答えて

0

。 Railsでは

フォームビルダーを使用します。

foo: { 
    route_id: 1 
} 

「ルート」キーがモデルあなたに.model_nameを呼び出すことによって推定される:

<%= form_for(Foo.new) %> 
    <%= f.collection_radio_buttons(:route_id, Route.all, :id, :time_trip, {}, { class: "timeselect" }) %> 
<% end %> 

これはあなたのparams次のハッシュを与えるだろうしフォームビルダーにバインドします。

これらのparamsは、単に強いパラメータをホワイトリストに登録することができます。

params.require(:foo).permit(:route_id) 

あなたがで要素を選択することができます。

$('input[name="foo[route_id]"]') 

またはIDで - それぞれをチェックする最も簡単な方法は、見てのいずれかでありますHTML出力、またはブラウザインスペクタを使用します。

+0

データベースに保存し、しかし '$( '入力[NAME = "注文が[route_id]"]:ラジオ')の変化(関数(){ VaRのSTR3 = ""; $( '入力[名前。 str3 + = $(this).text()+ "\ n"; $( "#timevalue")。テキスト(str3) }); 'うまくいきません – Helga

関連する問題