• ベストアンサー

IE 11 で<FRAME>の内容が変化しない

HTMLの<FRAMESET>で3つのフレームを作り、そのうちの一つの内容を変えようとして、SRC アトリビュートでオリジナルの文書と違うHTML文書を指定しますが、何度IEを再起動してもその新しい文書が表示されず、いつまでもオリジナルが表示されます。 同じことを EDGE でやるとちゃんと表示されますので、やり方は間違ってないとおもいます。 なぜ IE ではこうなるのか、またどうすればそれを治せるのか、どなたか教えてください。お願いします。使っているコンピューターはWINDOWS 10 です。

  • HTML
  • 回答数5
  • ありがとう数5

質問者が選んだベストアンサー

  • ベストアンサー
回答No.5

どうも、信じられない現象ですね。 >ブラウザーをリフレッシュしただけです。 つまり結果として「ブラウザを開きなおしても」 addNewParts.htmlではなく、sampleDummy.htmlが出るという 補足なのですが。キャッシュなどが悪さしていることもありそうですが。 聞いている限りは、通常起こりえない問題に聞こえます。 IEが壊れているなど、そのHTML部分としてではなく、 別の観点での、調査をする方が先なのかもしれませんね。 たしかに、IEはもう衰退していく運命とは言え、 使っている人も多いことも事実なので、対応したいというのは わかるほうですが。

papashiroSooke
質問者

お礼

いつまでもお付き合いいただいて、本当に有難うございます。 この現象は次の日になったら治っていて、変更したページが表示されますので、キャッシュやクッキーが関係しているのかもしれません。 また最初に質問した時には、Edgeではうまくいくように書きましたが、じつはEdgeでも同じことが起こっています。 しかしながら、取りあえずはプログラムの作成は進められますので、この件はあまり気にしないようにて、いったんは質問を閉じたいと思います。 色々とアドバイスを頂きありがとうございました。 ベストアンサーにさせて頂きます。

その他の回答 (4)

回答No.4

> <frame src="addNewParts.html" name="products"> </frame>の src= のところをいくら変えても、表示されるのはいつも最初に指定した文書です。 どうやって変えましたか? このFORMで「下ウインドウ」=displayに対してPOSTしたのであれば、 <frame src="addNewParts.html" name="products"> </frame>ここは 変わらないわけで、productsを書き換えているつもりの、 ソース部が見当たらないので、そこらへんにヒントがありそうですね。 それと、addPart2DB.phpこいつは何を出力したのかも 回答側わからないので、何が起こっているのかを判断する十分な 情報がないように感じます。 ここら辺の開示でこの件は、割と簡単に解決する話だとは 思いますよ。

papashiroSooke
質問者

お礼

回答有難うございます。 SRC=のところをどうやって変えたのかというご質問ですが、もとのHTML文書を次のように手で書き換えてブラウザーをリフレッシュしただけです。 何もJavaScriptのコードによって書き換えているわけではありません。 これまで: <frame src="addNewParts.html" name="products"> 変化後 : <frame src="sampleDummy.html" name="products"> この sampleDummy.html という文書は文字や画像などはなく<body> の背景色を黄色にしただけのっぺらとしたものです。 私が期待しているのは、上のように書き換えたあとにブラウザーをリフレッシュしたら、もとのaddNewParts.htmlではなくて、こののっぺらとしたページが表示されるということなのです。

  • ivno
  • ベストアンサー率0% (0/1)
回答No.3

まず盛大な勘違いをなされておられるようですので、そちらを正します。 DTD宣言がHTML 4.01 Transitionalとなっています。 この部分ですね。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> Transitionalはフレームを使用することができないルールとなっています。 ですので本来のルールに従うなら、TransitionalではなくFramesetを利用してください。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd"> こちらで表示されるか否かの確認を行ってください。

papashiroSooke
質問者

お礼

ご回答有難うございます。 お礼が遅れたことをお詫びいたします。申し訳ありません、 transitional ではなく frameset に変えてやってみましたが、変わりません。<frame src="addNewParts.html" name="products"> </frame>の src= のところをいくら変えても、表示されるのはいつも最初に指定した文書です。

回答No.2

こちらも、遅くなりすいません。 上のフォームが「下に対して」アクションを起こしているソースが 見当たりません。 いかが参考になると思いますが、 https://www.tagindex.com/html_tag/form/form_target.html いかがでしょうか? body frame A こいつが何もしないでPOSTすると、自分自身をリロードするため、     今回のような結果に見える。 frame B そうではなく、こっちにPOSTしたほうがいいのではないか?という     話になります。

papashiroSooke
質問者

お礼

毎度お礼が遅くなって、申し訳ありません。 確かに<form>タグに target="display" を書き忘れていますが、今の質問はボタンを押して別の文書を呼んでくるという以前のことで、<frameset> で区切った各フレームの中に表示する文書を、<frame src="....." > の中でいくらsrc="..." を変えても表示は元のままで変わらないということです。 何かいいお考えはないでしょうか?

回答No.1

何が起こっているのかが、わかりにくいので、 ソースを貼ってもらえますか?

papashiroSooke
質問者

お礼

ご回答有難うごぁいます。 早速にご回答を頂きながら、お礼が遅れたことをお詫びいたします。 ソースコードもつけずに質問したのは失策でした。 ここに添付させていただきます。 まず<frameset>のhtml !doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title> devideMainFrame3.html</title> </head> <frameset rows="50%, 50%"> <frame src="addNewParts.html" name="products"> </frame> <frame src="dummy.html" name="display"> </frame> </frameset> </html> そして上側の<frame >、name="product" に入れるソースコード <!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title> addNewParts.html</title> </head> <body bgcolor="navy" style="font-size:16pt; color:yellow;font-family:sans-serif; font-weight:bold"> <center> <form method="POST" action="addPart2DB.php"> <table border="1"> <tr> <th>part number </th><th>category</th><th>description</th><th>qty in</th><th>location</th> </tr> <tr> <td><input type="text" name="pNumX" size="16"></td> <td><input type="text" name="catX" size="16"></td> <td><input type="text" name="descX" size="60"></td> <td><input type="text" name="qtyX" size="18"></td> <td><input type="text" name="locX" size="8"></td> <td><input type="submit" value="add new part to data base"></td> </tr> </table> </form> </center> </body> </html> 下の<frame>はダミーで真っ白な画面ですが、上の画面から送信ボタンを押すとPHPプログラムが起動し、下の画面に部品登録内容確認の表示をするようにしてあります。 この上のフレームに入れるHTMLの内容を変えても、表示されるものはいつも最初にあった内容です。何も変化しません。 IEの何かを設定しなくてはいけないのでしょうか?

関連するQ&A

  • フレーム分けのタグですが、上下分割の境界線を消せないでしょうか?

    <HTML> <HEAD> <TITLE> [上と下左右分割フレームの基本型] </TITLE> </HEAD> <FRAMESET ROWS="30%,70%"> <FRAME SRC="ue.html" NAME="top"> <!-- 上に表示するHTMLの指定 --> <FRAMESET COLS="30%,70%"> <FRAME SRC="hidari.html" NAME="b_lt"> <!-- 下左に表示するHTMLの指定 --> <FRAME SRC="migi.html" NAME="b_rt"> <!-- 下右に表示するHTMLの指定 --> </FRAMESET> </FRAMESET> </HTML>

    • ベストアンサー
    • HTML
  • (IE8)FRAMEで指定したページが表示されません

    IE7からIE8に更新してからフレームの表示が不可解なものになりました。 現象: index.htmlの中で以下のように指定しています。 <FRAMESET COLS="160,*" FRAMEBORDER=NO BORDER=0> <FRAME SRC="./menu.html" NAME="menu"> <FRAME SRC="./top.html" NAME="main"> </FRAMESET> このindex.htmlを表示すると左側フレームのmenu.htmlは表示されますが、 右側フレームにはtop.htmlではなくmenu.htmlからリンクしている別のページが 表示されます。 IE7の時は普通に左にmenu.html、右にtop.htmlが表示されていました。 IE8でもIE7と同様に表示するようにするにはどうすれば良いでしょうか?

  • フレーム内容が表示されない

    下記のようなページを読み込んだときに、フレームの内容が表示されません。ログを見ると、index.aspのみが読み込まれており、フレーム内のファイルが読み込まれていません。試しに全てをhtmlファイルにして読み込んでもNGでした。フレームをなくしてみるとindex.aspの内容は表示されます。ue.asp、sita.aspのファイルを内容はそのままで新規ファイルに置き換えてみると、たまに表示されます。表示・非表示の場合の規則性はありません。2つのファイルは、共に「うえ」「した」とbodyにテキスト表示しているだけです。 もしかすると、フレームタグ内の単純な書きミスなのかもしれないのですが、リファレンスと比べても違う箇所が分りません。ご教授お願いします。 作成は、VisualStudio6.0。表示検証は、IE6です。 <index.asp> <HTML> <HEAD> <% Response.AddHeader "Pragma", "no-cache" Response.AddHeader "Cache-control", "no-cache" %> <META HTTP-EQUIV="Content-Type" Content="text/html; charset=x-sjis"> <TITLE>new</TITLE> </HEAD> <body> <frameset rows="60,*"> <frame src="ue.asp" name="title" frameborder="0"> <frame src="sita.asp" name="body" frameborder="0"> </frameset> </BODY> </HTML>

  • htmlのフレームについて

    メモ帳からホームページをつくっています 二分割フレームを作っていて、それぞれ frame.html framelight.html framemigi というふうに保存しています 一応分割するためのページには <Html> <Head> <Title>フレームのページ</Title> </Head> <Frameset cols="150,*"> <Frame name="hidari" src="1.html"> <Frame name="migi" src="2.html"> </Frameset> <Noframes> フレーム未対応ブラウザへ表示される部分。 </Noframes> </Html> をコピペして作ってあります    src= のところは変えてあります パソコン内からframe.htmlを開くと分割されたものしか出ません そうゆうものなのでしょうか

  • 3分割フレームについて

    初歩的な質問でしたらすみません。 横3分割のページを作成しているのですが、<FRAMESET rows="*,*,*">部分を77,*,65のように、100%越するのは良くないのでしょうか…? 検索してみても、「ペ-ジの大きさは両方で100%になるように。」と書いてあるのですが、100%にしなければいけない理由がよく解らず…; 因みに、77,*,65に指定したい訳は、上部に縦77の画像を表示させたいのと、下部に縦50の画像を表示させたいからです。 また、当方のPCでは <HTML> <HEAD> <title></title> <FRAMESET rows="77,*,65"> <FRAME src=""frameborder="no"> <FRAME src="" name=""frameborder="no"noresize> <FRAME src=""frameborder="no"> </FRAMESET> </HTML> と書き込んでも特に問題はありません。(が、やはり訪問者側が気になるので…^^;) ※ただ 編集ページでは、「ページでエラーが発生しました」と表示されます。(<FRAMESET rows="77,*,65">を入れないと、エラーは表示されないのですが;) 今までは フレーム縦割りを使っていて、(<frameset cols="10%,25%">指定)同じく編集ページでのみエラーと表示されたのですが、不具合等の報告は一度もありませんでした。 これで問題ないのか…、他に何かアドバイス等ありましたら、ご教授いただけると助かります。 宜しくお願い致します。

  • フレームのことなんですが

    説明しにくいので、もしわかりにくければ下記のソースを参考に ご回答いただけるとありがたいです(4つ有効なリンクが貼ってあります)。 四分割のフレームをつくりました。 その内の一つにyahoo.co.jpを設定してあります。 そのyahooの右側の「個人ツール」の箇所だけ 焦点をあてて表示させる方法はありませんか? 一目でメールチェックができるようにしたいので。 なお、HP作成ではなく、まったくのローカルで使うものです。 <HTML> <HEAD> <TITLE>LINK</TITLE> </HEAD> <FRAMESET COLS="50%,50%"> <FRAMESET ROWS="42%,58%"> <FRAME SRC="http://www.google.co.jp" NAME="google" SCROLLING="auto" > <FRAME SRC="http://www.goo.ne.jp" NAME="goo" SCROLLING="auto" > </FRAMESET> <FRAMESET ROWS="73%,27%"> <FRAME SRC="http://www.yahoo.co.jp" NAME="yahoo" SCROLLING="auto" > <FRAME SRC="http://www.infoseek.jp" NAME="infoseek" SCROLLING="auto" > </FRAMESET> <NOFRAMES> <BODY> 本ページはフレームで構成されております。<BR> フレーム未対応のブラウザでは表示できませんのでご了承ください。</BODY> </NOFRAMES> </FRAMESET> </HTML>

    • ベストアンサー
    • HTML
  • IEでフレームが表示できない

    以前ホームページを作成したのですが、他者様のご指摘により、IEでは正しく表示できていない事が発覚しました。フレームを使用しており、これを取り除けばうまくいくのですが、ローカル環境では、フレーム有りでも正しく表示されます。 大変困っております。ご存じの方居りましたら、どうかご教授お願いします。 以下ソース <html><head><title>ホームページ名</title></head> <frameset rows="210,*" frameborder="no"> <frame src="http://(以下略" name="menu" noresize> <frame src="http://(以下略" name="main" noresize> </frameset> </html>

    • ベストアンサー
    • HTML
  • フレームについて質問

    メニュー(五つ以上)が左。メインが右というようにフレームを設定したいのですがなぜか下のタグでやると、指定したHTMLが(例えばBBSとかが) 出てこないんです。それとその指定した画面は他のHPで発見するのです。 (そのHPを開いていたので・・・・) <FRAMESET FRAMEBORDER="0" COLS="20%,80%"> <FRAME SRC="3page.html"NAME="migi"> <FRAME SRC="index.html"NAME="bbs"> </FRAMESET> どうやればフレームを成功させる事が出来ますか?教えて下さい。。

  • フレームをHTMLで作成。。しかし、うまくできてない

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd"> <html> <head> <title>フレームを作りたい</title> </head> <frameset cols=20%,80%"> <frameset rows="200,*"> <frame src="frame1.html"> <frame src="frame2.html"> </frameset> <frame src="frame3.html"noresize> </frameset> </html> フレームをニ分割?というのでしょうか?を左に 作りたいのですが、うまくできたのですが、ブラウザで プレビューしたところ、右側が全部灰色になっていて 右側がちゃんと できていませんでした。なんとか、直したいところ なのですが、どうすればいいでしょうか?

  • フレーム分割領域のサイズを変更する

    HTMLのframesetタグでフレームを分割してHTMLを 表示させることができます。例えば... <frameset rows="40%,60%"> <frame name="frm_01" target="f_left" src="left.htm"> <frame name="frm_02" target="f_right" src="right.htm"> </frameset> と記述すると、ウィンドウ左にleft.htmを40%、ウィンドウ右にright.htmを 50%割合で表示します。これらを何かHTML上のボタンをクリックされる などのイベントが生じた場合に、ウィンドウ分割してある比率を(例:left.htm40%→60%)の ように変更したいのですが、そのようなことはできないものでしょうか?

専門家に質問してみよう