[HTML]ブラウザの"戻る"機能

Read More

ブラウザ(又はモバイル)の「戻る」機能を使った時に、


「入力内容を再度送信しますか?」
ってな文章がでることがある。



これを出さないようにする方法。


--
まず上記の文章がでる条件ってのは
form要素のmethod属性の値をPOSTにしているから。



要するにこのmethodをGETにすればいいだけ。



GETでの記述例)
<form action="hogehoge.html" method="get">
  <input type="text" name="txt_010" value="piyo" />
  <input type="submit" name="btn_submit" value="submit" />
</form>




またmethodのデフォルト値はgetになっているので、
省略してもGETになる。
例その2)
<form action="hogehoge.html">
  <input type="text" name="txt_010" value="piyo" />
  <input type="submit" name="btn_submit" value="submit" />
</form>




気をつけなくてはならないのは
GETで送ると送った値がURLで丸見えになる。



上記の例でいくと
http://example.com/hogehoge.html?txt_010=piyo&btn_submit=submit

こんな感じのURLが生成される。



ログイン後のURLにIDとPWDが表示されてたらセキュリティもくそもあったもんじゃない。



--
あとGETにはバイト数に制限がある、はず。
255バイト超はダメとかうろ覚え~に覚えてる。
# 昔過ぎて理由を覚えてない
# また調べるのも面倒なので調べません


つーことで、
長いデータが送られる可能性のある場面ではPOSTで送るしかない。

POSTで送ったあとにリダイレクトして再送信を回避する方法ってのがある。
もっともこちらは万能ではないが。



まあまた。

Category "HTML・JS・CSS" の最新記事