選択されたオプションが nil でない場合、チェックボックスがチェックされます。オプションが nil の場合、チェックは外されません。
$('#gradable_items_wrapper select').change ->
selected_option = $("option:selected", @)
gi_id = selected_option.data('gradable_item_id')
the_checkbox = $("#flightlesson_gradable_item_ids_#{gi_id}")
if selected_option.val() == ''
the_checkbox.prop('checked', false)
else
the_checkbox.prop('checked', true)
オプションの1つを「テスト」にして、次のことを行うと...チェックボックスがオフになります。何らかの理由で '' が上記で正しく評価されていません。
$('#gradable_items_wrapper select').change ->
selected_option = $("option:selected", @)
gi_id = selected_option.data('gradable_item_id')
the_checkbox = $("#flightlesson_gradable_item_ids_#{gi_id}")
if selected_option.val() == 'Test'
the_checkbox.prop('checked', false)
else
the_checkbox.prop('checked', true)
選択でオプションが選択されている場合はボックスをチェックし、空のオプションが選択されている場合はチェックを外す必要があります。
<div class="well" id="gradable_items_wrapper">
<select id="gradable_category_gradable_item_<%= g.id %>">
<option value=""></option>
<option value="Intro" data-gradable_item_id="<%= g.id %>">Intro</option>
<option value="Discussion" data-gradable_item_id="<%= g.id %>">Discussion</option>
<option value="Review" data-gradable_item_id="<%= g.id %>">Review</option>
</select>
</div>