コピペ実装可!jQueryマルチセレクトボックス「Select2」の紹介

・シンプルでおしゃれなマルチセレクトボックスを作りたい
・操作しやすいマルチセレクトボックスがほしい

こう思っていた以前の私に向けて、記事を作成しました。

マルチセレクトボックスは使う機会がなく、たいていはチェックボックスをたくさん置く事が多かったです。ちょうど真剣に向き合う機会があり、色々調べた結果を整理して書いていきます。

はっきり言ってとても簡単に作れます!

まずはサンプルをご紹介します!

サンプルとサンプルソース

サンプル

デモ

空のhtmlファイル(demo.html等)を作成し、当ページのサンプルソースを貼り付けて、ブラウザで実行すると、すぐに動作確認できます!

サンプルソース

CDNを使うとライブラリのダウンロードも不要で以下のコピペだけで実装終了です!

HTML / JavaScript / jQuery / css
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8"><title>デモ</title>

  <!--   jQueryライブラリ読み込み -->
  <script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
  <!--  /jQueryライブラリ読み込み -->

  <!--  独自ライブラリ読み込み -->
<link href="https://cdn.jsdelivr.net/npm/select2@4.1.0-beta.1/dist/css/select2.min.css" rel="stylesheet" />
<script src="https://cdn.jsdelivr.net/npm/select2@4.1.0-beta.1/dist/js/select2.min.js"></script>
  <!--  /独自ライブラリ読み込み -->

</head>
<body>


<!-- Select2で作るマルチセレクトボックス -->
<select class="js-multiple" multiple="multiple" style="width:200px;">
  <option>リンゴ</option>
  <option>ゴリラ</option>
  <option>ラッパ</option>
  <option>パイナップル</option>
</select>


<!-- ############ javascript  ############ -->
<script type="text/javascript">

$(document).ready(function() {
    // Select2でセレクトボックスをつくる.
    $('.js-multiple').select2();
});
</script>
<!-- ############ /javascript  ############ -->


</body>
</html>

公式サイト

公式サイトはこちらです。
https://select2.org/

導入方法

1、「ソースはこちら!」のソースをコピーするだけ

ライブラリもCDNを使えば、ライブラリのダウンロードなんていりません!コピペするだけで実装完了です!

なんて簡単なんでしょうか!

中身はjavascriptでも指定できます

optionタグで中身を作成せず、javascriptでプルダウンの中身を指定することもできます。

/**
 * セレクトボックスの中身.
 */
var sentakushi = {
    monkey : 'リンゴ',
    rabbit : 'ゴリラ',
    possum : 'ラッパ',
    ponsuke : 'パイナップル'
};

サンプルトップのサンプルと見た目は同じです

デモ

サンプルソース

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8"><title>デモ</title>

  <!--   jQueryライブラリ読み込み -->
  <script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
  <!--  /jQueryライブラリ読み込み -->

  <!--  独自ライブラリ読み込み -->
  <script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.6-rc.0/js/select2.min.js"></script>
  <script type="text/javascript" src="js/mySelect2.js"></script>
  <link href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.6-rc.0/css/select2.min.css" rel="stylesheet" />
  <!--  /独自ライブラリ読み込み -->

</head>
<body>


  <!-- Select2で作るマルチセレクトボックス -->
  <select class="js-multiple2" multiple="multiple" style="width:200px;"></select>


<!-- ############ javascript  ############ -->
<script type="text/javascript">

/**
 * セレクトボックスの中身.
 */
var sentakushi = {
    monkey : 'リンゴ',
    rabbit : 'ゴリラ',
    possum : 'ラッパ',
    ponsuke : 'パイナップル'
};


$(document).ready(function() {
    // セレクトボックスの中身を設定する.
    let options = $.map(sentakushi, function(text, value) {
        let option = $('<option>', {value: value, text: text});
        return option;
    });
    $('.js-multiple2').append(options);
    // Select2でセレクトボックスをつくる.
    $('.js-multiple2').select2();
});
</script>
<!-- ############ /javascript  ############ -->


</body>
</html>

よかったら、SNSでシェアして頂けると嬉しいです!
今後の励みにもなりますので、よろしくお願いします!