1. ホーム
  2. html

[解決済み] ブラウザに入力値をキャッシュ/保存しないように指示するページを作成する

2022-08-04 01:51:46

質問

ほとんどのブラウザは、フォームの入力値をキャッシュしています。そのため、ユーザーがページをリフレッシュしたとき、入力は同じ値を持っています。

ここで問題が発生しました。ユーザーが 保存 をクリックすると、サーバーはPOSTされたデータ(チェックされた製品など)を検証し、有効でない場合はブラウザに送り返します。ただし、前述のとおり、サーバーが一部の値の選択を解除しても、ブラウザのキャッシュにより選択されたままになることがあります

私のデータには不可視の (親項目が選択されるまで) チェックボックスがあるため、ユーザーは以前の値がまだ選択されていることに気付かず 保存 をクリックすると、エラー メッセージが表示されます。これは苛立たしいことです。

これを解決するには Ctrl + F5 というものですが、解決策にすらなっていません。あるフォーム/ページでフォーム入力データをキャッシュしないようにブラウザに指示する自動的/プログラム的な方法はありますか?

どのように解決するのですか?

明示的に値を空白にしていませんか?例えば

<input type="text" name="textfield" value="">

これで、ブラウザがデータを入れるべきでないところに入れるのを止めることができるはずです。別の方法として autocomplete 属性を追加することもできます。

<form autocomplete="off" ...></form>