私はいつも美しく働いているチェックアウトページのあるサイトを持っています。
最近、オートフィルを使用して情報を入力する顧客は、自分のメールアドレスを会社のフィールドにダンプします。それに影響を与える可能性のある変更はありません。これの一番下に到達するために使用できる他のツールは何ですか?
何が原因で問題が発生したのかはまだわかりませんが、これを見た人は、自動入力で埋められないようにreadonly
フィールドを作成することになりました。次に、フォーカスが合うとアクティブになり、ユーザーが手動で入力できるJSを作成しました。
<input type="text" name="company" readonly="" onfocus="this.removeAttribute('readonly');">
同様の問題に直面し、オートコンプリートプロパティはこの状況で使用されるものです
<input type="text" name="fooBar" autocomplete="organization" >
OPの問題は解決された可能性があります(または、最近の更新で再び戻ってきた可能性があります!)が、2019年初頭の時点で、show-autofill-type-predictions
フラグchrome://flags
、Chromeを再起動してから、問題の入力のタイトル(ツールチップテキスト)を確認します。フィールドの「タイプ」を推測するためにどの情報が使用されているか、およびどのような種類の保存データを使用して入力する必要があるかがわかります。
「名前」フィールドの下に「会社」フィールドがあるという同様の問題が発生しました。その会社の分野は、誕生年で自動入力されました。 「名前」フィールドのすぐ下に「生年月日」フィールドグループを表示していた同じサイトの別のフォームから取得されました。だからchromeはその順番でオートフィル値を保存しました。2番目のフォームフィールドの順序を変更することになりました(残念ながら、それが最善でした)。
入力タグに名前を追加する必要があります。ブラウザは名前を使用して、フィールドに入力する情報を識別します。必要に応じて、IDとプレースホルダーにも同じものを使用できます。これを試して:
<input type="text" name="company" id="company" placeholder="company">
それでも機能しない場合は、その特定のフィールドの自動入力を無効にすることを検討してください*:
<input type="text" name="company" id="company" placeholder="company" autocomplete="off">
*同じオートコンプリートプロパティとオフ値を使用して、フォーム全体のオートフィルをオフにすることもできます。
Chrome 72 ...で同じ問題が発生しました。名前のみを完全に考慮せず、読み取り専用ではない限り、あらゆる種類のフィールド(選択または入力)を埋めたいだけでした。オートコンプリートなどの属性)、以前に保存した可能性のあるあらゆる種類の値。
change
イベントをリッスンするか、オートフィルが正しくないためにエラーメッセージをトリガーする可能性のある入力の検証があるため、フィールドにデータが入力されないようにすることができます。ブラウザに入力する別のフィールドを提供するだけで、他のフィールドの下に非表示にして表示することはほとんど不可能にします。
<input type="text" id="autofill-if-you-dare" style="position: absolute; z-index: -1; top: 20px; width: 0; height:0" />
注:後でJavaScriptで非表示または削除することはできますが、Chromeは表示されているフィールドのみに入力されるため、自動入力が完了する前に非表示にしないでください。他の回答では、イベントをトリガーしないため、ポーリングを使用してトリガーする必要があります。
最近、ショッピングカートページでchromeから表示され、サイトのユーザー名とパスワードが保存されているときに、このような問題が発生し始めました。 Chromeは、ユーザー名の値を不可解に数量ボックスに入れます。多くの髪を引っ張った後、ページに隠されたユーザー名とパスワードのフィールドがあることに気付きました。これらは、表示されると正しく自動入力されます。非表示の場合、chromeは数量入力ボックスを自動入力します。これらのコントロールでautocomplete = "username"およびautocomplete = "current-password"を設定することで、問題はなくなりました。
最近、この問題に直面しています。具体的にはクロムです。のようだ
autocomplete="off"
chromeにもう拾われていません。次の情報源が参考になりました。
Chromium(多くのChromeが基づいているものだと思う)には、Chromeのオートコンプリートで入力するフィールドを見つけるときに使用される正規表現を示す次のコードがあります。
私が見つけた他の唯一の仕事は、これらの規則に従うことだと感じています: https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete
または、少なくとも、上記のリストとは十分に似ていない属性を指定して、オートコンプリート機能で選択されないようにしてください。