私はブローフォームを選択しています
<%= f.select(:title, options_for_select([['Pick a reason',{:value => 0}],['Title 2', {:value => 1}], ['Title 3', {:value => 3}])) %>
したがって、誰かがドロップダウンから 3 つのオプションのいずれかを選択すると、jquery を使用してテキスト ボックスに 3 つのうちの 1 つをレンダリングします。
<%= f.text_area :text , :rows => 10, :class=>"selectInput", :id=>"0", :style=>"display:none;", :value=>" text for pick reason"%>
<%= f.text_area :text , :rows => 10, :class=>"selectInput", :id=>"1", :style=>"display:none;", :value=>" text for title 1"%>
<%= f.text_area :text , :rows => 10, :class=>"selectInput", :id=>"2", :style=>"display:none;", :value=>" text for title 2"%>
しかし、どのオプションが選択されていても、最後の text_area エントリがデータベースに保存されます。この場合、その
<%= f.text_area :text , :rows => 10, :class=>"selectInput", :id=>"2", :style=>"display:none;", :value=>" text for title 2"%>
どうすればそれを回避できますか? そして、画面に表示されているものがデータベースに保存されるものであることを確認してください。
また、ここに私のjqueryがあります
<script>
$(document).ready(function(){
$('#bashing_title').change(function(){
$(".selectInput").hide();
$("#"+this.selectedIndex).show();
});
});
</script>