multiselectのoption要素をjqueryで選択状態にする

仕事でであったのでメモ代わり

 

jqueryを使用したwebアプリでセレクトボックスの内容を選択状態にしたとき

基本的に

    $('select').val() = value

の形式で設定していたが、複数選択の場合は各要素に対し

    $('select').attr('selected', 'selected')

で設定する必要がある

 

 

ここまで書いたところでどうやらIE10だと挙動がおかしいという記事を見つけてしまった

どうもattrではなくpropを使う必要があるらしい…

まぁ 今回はchromeのみ対応ってことだったから黙ってていいかな

 

ちなみにこんな感じで全選択した

$('#select option').each(function(){

    $(this).attr('selected', 'selected');

});