IEでオートコンプリートが動作するための条件とは!?

ブラウザでユーザ入力を補完してくれる機能「オートコンプリート」。
IDやパスワードの入力を省略したい場合などに使用すると結構便利です。
Web開発を行っていると、このオートコンプリートがブラウザによって効いたり効かなかったりすることがあります。
具体的にはChrome、Firefoxなどは効くがIEだと効かないという状態です。
オートコンプリートを使用するためには以下のブラウザ設定が必要です。
・インターネットオプション->「コンテンツ」タブ
  「フォーム」:オンにする。
  「フォームのユーザー名およびパスワード」:オンにする。
  「パスワードの保存前に確認」:オンにする。
上記設定を行った場合でも、IEだとオートコンプリートが効かないことがあるのです。
色々調べてみると、IEでオートコンプリートを効かせるためには、該当ページの構造として以下の条件にマッチする必要があるようです。
 ・該当ページのform内に、<inputType=”text”>、<inputType=”password”>項目が一つずつ存在すること。
 ・<input type=”submit”>、もしくは<input type=”image”>でフォーム送信すること。
逆に以下のような場合だと、オートコンプリートが効きません。
 ・<inputType=”text”>項目が2つ以上存在する。
・<input type=”image”>の戻り値をfalseとする。
  (例:<input type=”image” onClick=”this.form.submit(); return false;”>)
 ・<input type=”button”>でフォーム送信すること。
 
 

コメント

タイトルとURLをコピーしました