勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

JavaScriptにてテキストボックスにサジェスト機能を実装できる「autoComplete.js」の利用方法

  JavaScript

以前にjQuery UIでテキストボックスにサジェスト(入力補助)機能を実装する方法をメモしたが、今回はバニラJavaScriptにて実装したい。調べたところ「autoComplete.js」ライブラリを用いることで簡単に実装できそう。以下にサンプルと実装方法をメモ。

 

autoComplete.js

公式サイト

https://tarekraafat.github.io/autoComplete.js/

GitHub

https://github.com/TarekRaafat/autoComplete.js

CDN

CDNで使う場合は以下を記述する。

<script src="https://cdn.jsdelivr.net/npm/@tarekraafat/autocomplete.js@10.2.7/dist/autoComplete.min.js"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@tarekraafat/autocomplete.js@10.2.7/dist/css/autoComplete.min.css">

尚、別のスタイル(デザイン)に変更したい場合、autoComplete.min.cssは読み込ませずに以下のどちらかを読み込ませること。

<!-- style 1 -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@tarekraafat/autocomplete.js@10.2.7/dist/css/autoComplete.01.min.css">

<!-- style 2 -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@tarekraafat/autocomplete.js@10.2.7/dist/css/autoComplete.02.min.css">

 

サンプル

https://taitan916.info/sample/autoComplete.js/

style 2のCSSを指定したサンプルになる。

 

実装方法

ソースコード

<input id="autoComplete">

<script src="https://cdn.jsdelivr.net/npm/@tarekraafat/autocomplete.js@10.2.7/dist/autoComplete.min.js"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@tarekraafat/autocomplete.js@10.2.7/dist/css/autoComplete.02.min.css">
<script>
const option = {
    placeHolder: '好きな寿司ネタを入力してください。',
    data: {
        src: [
            `サーモン`,
            `マグロ`,
            `中トロ`,
            `ねぎとろ`,
            `いくら`,
            `大トロ`,
            `炙りサーモン`,
            `エビ`,
            `ハマチ`,
            `鯛`,
        ]
    },
    resultItem: {
        highlight: true,
    },
    events: {
        input: {
            selection: (event) => {
                const selection = event.detail.selection.value;
                autoCompleteJS.input.value = selection;
            }
        }
    }
}
const autoCompleteJS = new autoComplete(option);
</script>

 - JavaScript

  関連記事

JavaScriptにて電子書籍や漫画ビューア用のライブラリ「ToraViewer」の利用方法

電子書籍や漫画ビューア用を設置したい。条件としてはレスポンシブ対応していること。 ...

JavaScriptでtableタグをエクセルファイル(xlsx)としてダウンロードさせる方法

table内のデータを何らかのファイルでダウンロードさせたい。通常PHPでCSV ...

JavaScriptでダミー画像(プレースホルダー画像)を表示する「Holder.js」ライブラリの利用方法

サイトの開発段階で「本番用の画像はまだ用意できていない」等の理由によりダミー画像 ...

JavaScriptでフォームのバリデート時に便利な「validator.js」ライブラリの利用方法

JavaScriptでフォームのバリデートを行う際、「半角英数字 正規表現」等で ...

JavaScriptでWebカメラやスマホカメラを利用してQRコードを読み取りURLを返す方法

JavaScriptのjsQRというライブラリで簡単にWebページ版QRコードリ ...