フォームの自動入力に関する問題に直面しています。実際に寄付者から資金を集めるトラスト チャリティーのウェブサイトを運営しています。
問題 :
ある目的のために寄付を入力した後、同じ目的のために別のクレジット カード情報で寄付を入力したいと考えています。次に、カード関連の詳細を入力する必要があるフォームに、以前の寄付からのすべての情報が保持されているため、すべてが入力されているのが奇妙です。
autocomplete="off"
フォームと入力も試し ました。
フォームの自動入力に関する問題に直面しています。実際に寄付者から資金を集めるトラスト チャリティーのウェブサイトを運営しています。
問題 :
ある目的のために寄付を入力した後、同じ目的のために別のクレジット カード情報で寄付を入力したいと考えています。次に、カード関連の詳細を入力する必要があるフォームに、以前の寄付からのすべての情報が保持されているため、すべてが入力されているのが奇妙です。
autocomplete="off"
フォームと入力も試し ました。
フォーム要素の ID または名前の先頭または末尾に一意の識別子を追加してみてください。
あるいは、これがあります:
autocomplete = ”off” は、一般的な DOCTYPE である XHTML Transitional では有効なマークアップではありません。
if (document.getElementsByTagName) {
var inputElements = document.getElementsByTagName(“input”);
for (i = 0; inputElements[i]; i++) {
if (inputElements[i].className && (inputElements[i].className.indexOf(“disableAutoComplete”) != -1)) {
inputElements[i].setAttribute(“autocomplete”, ”off”);
}
}
}
ページロードごとに入力の名前を変更します。プレフィックスを生成し、フォームの非表示フィールドに配置します。
$prefix = date("U"); //lets use unix time for this.
...
<input type="hidden" name="prefix" value="<?php echo $prefix; ?>"/>
<input type="text" name="<?php echo $prefix; ?>_cardnumber" />
...
そして、処理時に探します
$_POST[$_POST['prefix'].'_cardnumber']
これが Google Chrome の場合、実際には現在の Web フォームからのオートコンプリート設定を無視する機能があり、実際には独自の「個人用プログラム キャッシュ」からデータを取得し、便利なようにフィールドにデータを入力します。これは、住所フィールドを認識するときにも行われます。Thomas Martin Klein の答えはおそらく最もうまくいくでしょうが、私は以前にそれをテストしたことがないので、Chrome はとにかくあなたのアルゴリズムを認識するのに十分賢いかもしれません。幸運を!