Chrome で、オートコンプリートがほとんどの入力ボックスの履歴を記憶するのに対し、特定の 1 つのフィールドでは履歴が保存されないという問題が発生しました。Firefox ではそのフィールドの履歴を正常に保存できましたが、Chrome は他のフィールドの 99% でも動作します。同じフォームの他のフィールドでも履歴が保存されます。この厄介な問題の原因が何なのか、なかなか理解できません。
これに対する回避策はありますか? これまでにこの問題を経験した人はいますか?
編集: 私の勘違いでした。Chrome はこの特定のサイトではどのフィールドも記憶しないようです。Firefox は、まったく同じフォームのテキスト フィールドを問題なく記憶します。これは SugarCRM (Web ベースの CRM システム) にあるため、リンクを投稿することはできません。ただし、問題の元の入力ボックスのコードは次のとおりです。
<input type='text' name='ranumber_c'
id='ranumber_c' size='30'
maxlength='255'
value='300149' title='' tabindex='243' >
コード内にフォーム履歴の保存を無効にする (または破壊する) 可能性のある他の場所はありますか?
編集 2: @iglvzx - 興味深いことに、ほぼすべてのフォーム タグが不適切に生成されているにもかかわらず、DOCTYPE は XHTML Strict を示しています。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
実際に Chrome が入力フィールドを認識できなくなるのでしょうか?
答え1
私の理解する限りでは、Firefox は、情報を関連付けることができる「名前」属性を持つすべてのフォーム入力フィールドの情報を保存しますが、Chrome/Safari/Opera は、住所や支払い情報などの特定の貴重な情報のみを保存します。
答え2
問題のあるフィールドの HTML を同じフォーム内の他のフィールドと比較してみてください。類似点は何でしょうか。相違点は何でしょうか。
詳細がわからない場合は、より一般的な方法として、Chrome の自動入力エンジンでフィールドを強制的に分類する方法があります。一部のフィールドにはラベルが正しく付けられていないため、自動入力で問題が発生する可能性があります。考えられる解決策としては、Chrome がページ上のすべてのフォーム フィールドに一意の識別署名を追加できるようにすることができます。
この実験的な機能を有効にするには、新しいタブで次のURLにアクセスし、フラグを有効:
chrome://flags/#enable-show-autofill-signatures
関連するフラグでも成功する可能性がありますchrome://flags
。自動入力他のものも試してみましょう。
答え3
XHTML では、次のように単一のタグを閉じる必要があります。
<tag />
そしてまた、一重引用符は使用できません。 したがって、次のように記述する必要があります:
<input type="text" name="ranumber_c"
id="ranumber_c" size="30"
maxlength="255"
value="300149" title="" tabindex="243" />