[JS]このアイデアは面白い!セレクトボックスの選択肢をすぐに選択できるようにするスクリプト -Quick[select]
Post on:2015年11月9日
フォームのセレクトボックスは多くの選択肢を配置できる便利な要素ですが、他のフォームと操作性が異なるため一連の流れで入力しにくいのが弱点です。
セレクトボックスの操作性を改善し、デザインも簡単に変更できるスクリプトを紹介します。Quickの名前の通り、すぐに選択できるようになります。
Quick[select]
Quick[select] -GitHub
Quick[select]の特長・デモ
まずは、一般的なセレクトボックス。
通常のセレクトボックスの挙動
セレクトボックスは、タップとクリックの2つのオペレーションがあります。これはフォームの他の要素と操作性が異なり、ユーザーをフォームの一連の流れから外してしまうものです。
そこで注目すべき点は、通常セレクトボックスの選択肢の中にはより多く選択されるものがあることです。上記の例だと、「はい」「いいえ」が多いでしょう。
Quick[select]は、セレクトボックスの選択肢の中から、いくつかを表示させておくことができます。
Quick[select]のセレクトボックスの挙動
上記の例では、「朝食」「昼食」「夕食」を表示させています。
セレクトボックスのHTMLは、通常通りのコードでOKです。
1 2 3 4 5 6 7 8 9 10 |
<select id="bootstrap-example"> <option value="">一つを選んでください...</option> <option value="Breakfast">朝食</option> <option value="Brunch">ブランチ</option> <option value="Lunch">昼食</option> <option value="Afternoon Tea">おやつ</option> <option value="Dinner">夕食</option> <option value="Midnight Snack">夜食</option> <option value="I do not know">分からない</option> </select> |
Quick[select]で表示させるものを指定します。
1 2 3 4 5 |
<script type="text/javascript"> $('#bootstrap-example').quickselect({ breakOutValues: ['Breakfast', 'Lunch', 'Dinner'], }); </script> |
選択肢を全て表示させておくこともできます。
選択肢を全部表示
テーマも用意されており、簡単にデザインを変更することもできます。
デザインのバリエーション: Material Design Lite theme
Quick[select]の使い方
Step 1: 外部ファイル
当スクリプト・スタイルシートとjquery.jsを外部ファイルとして記述します。
1 2 3 4 5 6 |
<head> ... <script src="https://code.jquery.com/jquery-2.1.4.min.js"></script> <script src="/js/jquery.quickselect.min.js"></script> <link rel="stylesheet" type="text/css" href="/css/quickselect.css"> </head> |
Step 2: HTML
セレクトボックスは通常通りのHTMLでOKです。
1 2 3 4 5 6 7 8 9 10 |
<select id="bootstrap-example"> <option value="">一つを選んでください...</option> <option value="Breakfast">朝食</option> <option value="Brunch">ブランチ</option> <option value="Lunch">昼食</option> <option value="Afternoon Tea">おやつ</option> <option value="Dinner">夕食</option> <option value="Midnight Snack">夜食</option> <option value="I do not know">分からない</option> </select> |
Step 3: JavaScript
jQueryのセレクタでセレクトボックスを指定し、スクリプトを実行します。
あらかじめ表示させておく選択肢は、「breakOutValues」に指定します。
1 2 3 4 5 |
<script type="text/javascript"> $('#bootstrap-example').quickselect({ breakOutValues: ['Breakfast', 'Lunch', 'Dinner'], }); </script> |
sponsors