[Firefox] リロードしてもチェックボックス等の値が維持されてしまう

Firefox でページのリロードをした際に、インプットに入力したテキストやチェックボックスの値などが維持された状態で表示されてしまう。(静的なHTMLの場合)
もちろん、スーパーリロードをした際は初期化されて表示されます。


色々と解決方法があって、状況に応じて使い分けたり併用したりしてます。
ただ、これらの設定だけじゃ不十分な場合もあります。

#サーバサイド

Cache-Control: no-store

例えば、PHPだとこんな感じ

header("Cache-Control: no-cache, no-store");

#フロントエンド

#JavaScript

var hoge=document.getElementById('hoge');
    hoge.setAttribute("autocomplete","off");

jQueryで書いた方が楽かも

$("input, select, textarea").attr("autocomplete", "off");

#HTML

HTMLの<head>内で指定する場合

<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Cache-Control" content="no-cache">
<meta http-equiv="Expires" content="-1">

<input>に直接指定する場合

<input type="text" name="hoge" autocomplete="off" />

<form autocomplete="off">~</form> のような感じでも使えるみたい。

twitterfacebookhatenafacebook