aspで異なるフレームにページを再表示させるには?
[上に]
[前に]
[次に]
BlueTree
[E-Mail]
1998/12/09(水) 11:13:32
aspで開発しているのですが、行き詰まってしまいました。
異なるフレームに引数を渡してページを再表示させたいと思っています。
具体的に述べますと、
例えば上下にHEADとBODYというフレームをわけて、
HEADのほうにはHEAD.ASPを読み込み、
BODYの方では、BODY.ASPを読み込むようにします。
BODY.ASPでは、DBにアクセスしてその値を表示させるとします。
DBの値の一部をHEADの方にも表示させたいので、
引数を渡して、HEADのフレームにHEAD.ASPを再表示させたいのですが、
異なるフレームにページを読み込ませる方法がわかりません。
TARGETみたいなことを指定したりすることができるのでしょうか?
どなたかご存知のかた、教えて下さい。
宜しくお願いします。
ゆうこ
1998/12/10(木) 09:19:51
こんにちは。
うちでは、始めにフレームをこんな感じでつくって、
---------------------
<FRAMESET ROWS="50,*">
<FRAME SRC="Dummy.asp" NAME="HEAD">
<FRAME SRC="BODY.asp" NAME="BODY">
</FRAMESET>
---------------------
ダミーページと下のページを表示させ、
BODY.aspの中で、
---------------------
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
// Window ロード時
function Window_OnLoad() {
document.frmHEAD.submit();
}
</SCRIPT>
</HEAD>
。。。
<FORM NAME="frmHEAD" ACTION="HEAD.asp" TARGET="HEAD">
<INPUT TYPE="hidden" NAME="XXX" VALUE="***">
</FORM>
---------------------
としてます。
BlueTree
1998/12/10(木) 14:04:21
ゆうこさん、ありがとうございます。
非常に助かります!これで問題が解決できます。
<FORM>でTARGET指定できるとは知りませんでした。
ただ、ちょっとお聞きしたいのですが、JavaScriptの
Window_OnLoad()はどういうタイミングでよばれるのですか?
どこかでこの関数を呼ぶコードを書かなくていいのですか?
試したところうまく行かなかったので、
呼び出ししていないからかなと思って<body>タグにonLoad="Window_OnLoad()"
と書いてみたらうまく行きました。
でも、ゆうこさんがなさっていたのはきっとわざわざ<body>タグに
書かなくてもいいやり方なんだと思うのですが、
その辺を少し説明していただけませんか?
ゆうこ
1998/12/10(木) 15:31:09
[[解決]]
ごめんなさ〜い。抜けてました。
BlueTreeさんがなさったとおり、
<BODY onLoad="Window_OnLoad()">が正解です。
BlueTree
1998/12/10(木) 16:33:25
[[解決]]
そうでしたか。わかりました。
ちなみに発見したのですが、submitで送ると、
ブラウザの戻るボタンで戻った場合
dummy.aspの方の表示がなされてしまうので、
JavaScriptの記述で
------------------------------------------
var p_XXX = document.frmHEAD.XXX.value;
parent.HEAD.location.replace("HEAD.asp?YYY=" + p_XXX );
------------------------------------------
と記述してみました。
いずれにせよ、解決してほっとしました。
ゆうこさん、ありがとうございます。
[上に]
[前に]
[次に]