【HTML】autocomplete属性が思ったより多機能だった話

  • 2020年3月25日
  • HTML

 autocompleteはHTMLタグのinput, textarea, select, formで使える属性です、もっぱらinputでよく使われます。機能は自動補完の名の通り、一度使った入力欄を埋めるために入力値の提案と補完を行う機能です。自分はid属性やname属性で動いているON/OFF制御用の属性ぐらいの感覚でしたが実際はもっといろいろなことができました。この記事ではそのできることと使い方を紹介します。
HTML の autocomplete 属性 – HTML: HyperText Markup Language | MDN
 autocomplete属性は自動補完機能であり補完として提案する値をあらかじめどこかしらに持つ必要があります。これはほとんどの場合(自信がないのでこう表現しましたが多分全ての場合です)ブラウザに保存されます。autocomplete属性はある意味webページとブラウザの対話であり、多くのメッセージが用意されています。適切なautocompleteをセットすることによってユーザが他webページで入力した値を新たに訪れたwebページで自動補完することができます。
 オートコンプリート属性に設定できる値は次にまとまっています。
HTML の autocomplete 属性 – HTML: HyperText Markup Language | MDN
HTML Standard#4.10.18.7 Autofill
 例えば、次のようにautocomplete属性に値を設定して用います。

<input name="first-name" autocomplete="given-name">

 強力な利点はautocompleteがいくらかまとまって補完される点、webブラウザの責務の範囲でセキュアなものを取り扱った上でユーザビリティに貢献してくれる点にあります。autocompleteがいくらかまとまって補完される、というのある要素で補完をするとまとめて関連する要素も補完されるという機能です。これはGoogleChromeを使っている経験的には名前に紐づいた色々や郵便番号に紐づいた住所が動作します。二点が合わさって強力なのがクレジットカードの自動入力です。次のデモではクレジットカードのオートコンプリートが起動するautocomplete属性の値を羅列しました。

See the Pen
MWwPxrY
by cpt-sugiura (@cpt-sugiura)
on CodePen.


 上記デモのオートコンプリートはクレジットカード全体をまとめて入力できます。このためスクリーンショットの様にポチポチとするだけで覚えておくのが面倒なクレジットカード情報をユーザに簡単に入力させられます。余談ですが今どきのスマートフォン(iPhone、Android問わず)にはクレジットカードをカメラで見て文字列を読み取って自動入力する機能がついています。この機能もこのクレジットカードのオートコンプリートから呼び出せます。

>株式会社シーポイントラボ

株式会社シーポイントラボ

TEL:053-543-9889
営業時間:9:00~18:00(月〜金)
住所:〒432-8003
   静岡県浜松市中央区和地山3-1-7
   浜松イノベーションキューブ 315
※ご来社の際はインターホンで「316」をお呼びください

CTR IMG