• 締切済み

表示時に1回だけリロードさせるには?

ページを表示する際に1回だけリロードさせたいのです が、どのようにすればよいでしょうか? <META HTTP-EQUIV="Refresh" CONTENT="*">では*秒ごと にリロードされてしまいますが、そうではなくて表示の際 に1回だけリロードさせたいのです。 目的は、テンポラリに保存されたページではなく、サーバ 上の更新されたページを確実に表示させることにあります。 *を異常に長くするとかではなくて、何かスマートな手は ありませんでしょうか? よろしくご教授お願いいたします。

みんなの回答

  • makos
  • ベストアンサー率0% (0/0)
回答No.4

こんにちは。私も同じ事をやりたい時がありました。 その時はむりやり、セッションcookie(っていうのかわかりませんが物理的に 書かれないcookieです。)にフラグを立てて対応しました。 私の場合は、利用者が限定していたので、良かったのですが、 もし利用者が不特定多数の時は使用できないと思います。 (cookieを使用しないと設定されると無限loopしてしまう) ちなみにIE5.5の時に<META HTTP-EQUIV="pragma" CONTENT="no-cache"> が機能しなかったので、こういう対応をしました。

TCM
質問者

お礼

 ご回答ありがとうございます。  そうですかあ。やっぱり、IE5.5が元凶のようですね。利用者はイントラネット内の限られた範囲が対象ですが、不特定多数と考えたほうがいい状況です。  うーん、困った、熊ったです。

回答No.3

こんばんわぁ、Blackwinglsです。 > 教えていただいたタグを書いてみたのですが、うまくリ > ロードしてくれませんでした。 う~ん・・・・・ もしよろしかったら、問題のPageがあるURLを教えて戴けますか? それがマズかったら、ソース内容を教えてもらえるでしょうか? 一度、私の環境で動作確認してみたいと思います。 では(^_^)/~

TCM
質問者

補足

 本物はファイアウォールの中にありますので公開できないのです。申し訳ありません。ちょっと長くなりますが、スケルトンのみを以下に書きます。 「index.htmの内容」 <html> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <title>FRAME OF TEST</title> <meta name="GENERATOR" content="Microsoft FrontPage 4.0"> <meta name="ProgId" content="FrontPage.Editor.Document"> <frameset rows="69,*"> <frame name="banner" scrolling="no" noresize target="contents" src="hptest/test1.htm"> <frameset cols="124,*"> <frame name="contents" target="main" src="hptest/test2.htm"> <frame name="main" src="hptest/test3.htm"> </frameset> <noframes> <body> <p>このページにはフレームが使用されていますが、お使いのブラウザではサポートされていません。</p> </body> </noframes> </frameset> </html> 「test3.htmの内容」 <html> <head> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="Content-Language" content="ja"> <meta http-equiv="Content-Type" content="text/html; charset=shift_jis"> <meta name="GENERATOR" content="Microsoft FrontPage 4.0"> <meta name="ProgId" content="FrontPage.Editor.Document"> <title>test3</title> </head> <body> <p>test3</p> </body> </html>  上記のindex.htmを置いた場所を呼ぶとリロードされるかと期待したのですが、うまくいきませんでした。ひょっとしてブラウザ(IE5.5)の設定とかで変わるんでしょうか?  フレームがいけないのでしょうか?

  • madman
  • ベストアンサー率24% (612/2465)
回答No.2

逆に <META HTTP-EQUIV="Pragma" CONTENT="no-cache"> でキャッシュさせないようにすれば、必ず読みに来るかと思います。 ただし、ブラウザによってサポート状況が異なるのと、ページ戻るで戻れない事もありますが。

TCM
質問者

お礼

ご回答ありがとうございます。また、お礼が遅くなりまして申し訳ありません。 Blackwinglesさんへの補足もお読みくださいましたら幸甚です。よろしくお願いいたします。

回答No.1

こんばんわぁ、Blackwinglsです。 タイトルの方法ではないのですが、 <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> を記述することで、キャッシュを無効にできるようです。 (ただし、画像には無効) 一度、試してみてください。 では(^.^)/~~~

TCM
質問者

補足

ご回答ありがとうございます。 教えていただいたタグを書いてみたのですが、うまくリ ロードしてくれませんでした。メタタグは<head></head> の中に置いたり、<html></html>をはずして先頭に置いた りしたのですが、やはりだめでした。 何か考えられることはあるでしょうか?

関連するQ&A