💻

Select2で複数選択可の場合のみ選択肢を選んでも一覧が閉じないようにする

2020/11/16に公開

Select2で、選択肢を選んだあとに一覧が自動で閉じてしまうのが不便なことありませんか?

個人的には、単一選択の場合は自動で閉じてくれていいけど、複数選択可の場合は続けて選択するかもしれないので自動で閉じないほうが嬉しいと感じます。

単一選択 複数選択可

というわけで、これを実現する方法です。

結論

といってもめちゃくちゃ簡単な話で、実はSelect2には closeOnSelect というオプション が用意されています😇

デフォルトは true なので、何も指定しなければ常に自動で閉じる設定になります。

今回やりたいのは multiple 属性が設定されている場合のみ false にしたい ということなので、以下のように設定すれば解決です🙌

$('select').select2({
  closeOnSelect: !$(this).attr('multiple'),
});
GitHubで編集を提案

Discussion