2分割したフレームを同時に更新するには
[上に]
[前に]
[次に]
たじ
[E-Mail]
1998/12/29(火) 19:01:26
はじめまして、たじ と申します。
ASPでデータベースを更新するプログラムを作成しています。
ブラウザのフィールドを上下2つのフレームに分割して、上にはインデックスを表示し
下には詳細データを表示するプログラムを作成しました。
上のインデックスをクリックすると下のフレームに詳細が表示され、さらに詳細データ
を修正してsubmitボタンを押すとデータベースに反映されます。
このときに、上下両方のフレームに対して更新を行いたいのですが、フレームセットを
再読み込みするしか方法がないのでしょうか?
submitボタンを押した時に、TARGET指定で下のフレームに対して更新をかけたあと、Refresh
で上のフレームを更新させようと思いましたが、ダメですね。
何か良い方法はないでしょうか?
mura
[E-Mail]
1998/12/29(火) 22:57:00
キホンは↓こちらをご覧ください。JavaScriptを有効にしてないとダメです。
http://www.tohoho-web.com/how2/frame.htm#multi
上のフレームは、submitの影響を受けるのでしょうか?
というか、なんで上を更新する必要があるんでしょうか?
それがわからないとちょっと答えにくいんですが…。
簡単に思い付く方法として2つありますが、1つはsubmitボタンを押すと同時に更新
<INPUT TYPE=submit VALUE="さぶみっと" onClick="parent.UPPER_FRAME.location.href='hogehoge'">
2つめはsubmit後のHTMLで指定する
<BODY onLoad="parent.UPPER_FRAME.location.href='hogehoge'">
というやつです。もちろん他にも指定の方法はあります。
たじ
1999/01/02(土) 15:56:38
レスありがとうございます。お正月でここを見る頻度が落ちていますが・・(^^;
まず、同時更新の理由ですが。
下のフレームの詳細情報を変更してデータベースに登録された事を示すために”登録は完了しました”
等のメッセージを表示し、上のフィールドに対しては更新したデータに対応するプレビューデータを
再表示するために使用したいと思っています。
(会議室型のBBSで、インデックスと発言欄の2フレーム形式で運営されている物と同じ機能を
実現したいと思っています。)
そうですかJavaScriptを有効にしなければできませんか
JavaScriptはoffにしている人が多いので、できればHTMLだけで処理したいと思っていたのですが、
無理でしょうか?
mura
1999/01/03(日) 19:56:41
HTMLだけでは無理みたいですね。
もしできるなら上記Q&A集のページに既に載ってるんでしょうし…。
「詳細変更情報」のフォームのTARGETを_topにして、FRAMESETするページを
呼ぶ(その前に「完了しました」のメッセージを_topに表示する方法もあり)
しかないんでしょうね、たぶん。
たじ
1999/01/05(火) 09:21:17
[[解決]]
別の方法が無いことが判ればいいです。変な方法を使ってて「実はこんなスマートな方法が
あるんですよ」なんて事がなければあきらめもつきます。
FRAMESETで対処する方向で考えることにします。
年越しのおつきあい、どうもありがとうございました。
BAn
[E-Mail]
[HomePage]
1999/01/05(火) 13:02:48
以前こちらでおしえてもらったNetscape のみに有効な方法が、
http://home.netscape.com/eng/mozilla/2.0/relnotes/demo/target.html
↑こちらであります。
CGI で処理したデータを表示させる時で、IEを無視するなら
つかえそうです。
使い方は、HTTP の ヘッダーに、
Window-target: foo
と出すだけです。
これで、foo という名前の window に表示してくれます。
下のフレームを表示した後、Refresh を使って
Window-target で上のフレームを指定して表示。
ということを、私はやってます。
でも、NN専用だから、人にはアドレスを教えにくい・・。
かなり邪道な気がするけど、楽チンです。。
たじ
1999/01/05(火) 18:05:22
そんな方法があるんですか。
知りませんでした。(知らないことが多すぎる・・・・)
でも今回は、NN・IE両方対応が原則なので使えなかったりします。
どうもありがとうございます。
[上に]
[前に]
[次に]