RailsアプリでTwitterブートストラップを使用しており、複数のラジオボタン入力を使用してフォームを作成しています。フォームデータを管理するために、Javascriptを介して値が更新される非表示フィールドを作成しました。
任意の入力に対する以下のサンプルコード:
<div class="btn-group" data-toggle="buttons-radio">
<button type="button" class="btn" id="ornamental_only_yes" name="ornamental_only" value="yes">Yes</button>
<button type="button" class="btn" id="ornamental_only_no" name="ornamental_only" value="no">No</button>
</div>
<input type="hidden" id="ornamental_only" name="ornamental_only" value="">
このイベントを管理するためのJavascriptは次のとおりです。
<script>
var btns = ['ornamental_only_yes', 'ornamental_only_no'];
var input = document.getElementById('ornamental_only');
for(var i = 0; i < btns.length; i++) {
document.getElementById(btns[i]).addEventListener('click', function() {
input.value = this.value;
});
}
</script>
私の質問:複数のラジオボタン入力に同時に適用するような方法でJavascriptコードを抽象化する方法はありますか?(たとえば、上記のコードブロックを異なるIDで3回繰り返した場合)