- PR -

フレーム間でのデータのやり取り

投稿者投稿内容
ALADDIN
ベテラン
会議室デビュー日: 2002/08/20
投稿数: 85
お住まい・勤務地: 渋谷
投稿日時: 2002-09-12 13:15
ALADDINです。

フレームセットを利用しようと思っています。
2つに分割(AとB)されているときに、Aのフレームに
セットしてあるページのイベント(ボタンなど)で、
Bのフレームにセットしてあるページのラベルに
文字を表示したいのですが・・・・できません><
ご教授お願いします。
DaikiRyuto
大ベテラン
会議室デビュー日: 2002/07/23
投稿数: 200
投稿日時: 2002-09-12 13:44
引用:

ALADDINさんの書き込み (2002-09-12 13:15) より:
ALADDINです。

フレームセットを利用しようと思っています。
2つに分割(AとB)されているときに、Aのフレームに
セットしてあるページのイベント(ボタンなど)で、
Bのフレームにセットしてあるページのラベルに
文字を表示したいのですが・・・・できません><
ご教授お願いします。




クライアントサイドでJavaScriptでやるのでしょうか?
(クライアントではラベルはspanになってしまうので無理だと思いますが。枠なし入力不可のテキストボックスなら出来ますが)

それともASP.NETでサーバ側で処理するのでしょうか?

target属性を_topに設定し、Session情報などでデータを渡し、フレーム全体をリロードし、対象画面でSession情報を呼び出して設定させるという手ならあります。

対象フレームだけを書き換えるのは…どうやってやるんでしょう(^_^;
ALADDIN
ベテラン
会議室デビュー日: 2002/08/20
投稿数: 85
お住まい・勤務地: 渋谷
投稿日時: 2002-09-12 13:47
ALADDINです。

説明がなさ過ぎました。

ASP.NETでやろうとしてます。
DaikiRyuto
大ベテラン
会議室デビュー日: 2002/07/23
投稿数: 200
投稿日時: 2002-09-12 13:52
引用:

target属性を_topに設定し、Session情報などでデータを渡し、フレーム全体をリロードし、対象画面でSession情報を呼び出して設定させるという手ならあります。




この方法でやるのなら、まずボタン押下などのイベントを起こす画面AのFormのtarget属性を_topに変更します。
そして、ボタン押下時のイベントで、Session情報に指定したい文字列(あるいはフラグなど)を指定し、フレーム(画面Aと画面Bを含むフレーム)にResponse.Redirectなどで再び遷移します。
そして、画面BのPage_Loadメソッドの方でSession情報から指定したい文字列(あるいはフラグなど)を取り出してチェックし、ラベルに設定するという手順になるかと思います。

ALADDIN
ベテラン
会議室デビュー日: 2002/08/20
投稿数: 85
お住まい・勤務地: 渋谷
投稿日時: 2002-09-12 14:57
ALADDINです。

DaikiRyutoさんありがとです。
引用:

DaikiRyutoさんの書き込み (2002-09-12 13:44) より:

target属性を_topに設定し、Session情報などでデータを渡し、フレーム全体をリロードし、対象画面でSession情報を呼び出して設定させるという手ならあります。

対象フレームだけを書き換えるのは…どうやってやるんでしょう(^_^;


対象フレームだけを書き換えるのは難しそうですね。
教えていただいた方法はSession情報をAとBの間にかませると
いうやり方ですね。

ちなみにフォームのtarget属性を_topに設定する
のはどうやって・・・・^^;
初歩的過ぎますが・・
biac
大ベテラン
会議室デビュー日: 2001/10/22
投稿数: 106
投稿日時: 2002-09-12 15:45
余談ですが…

引用:

クライアントサイドでJavaScriptでやるのでしょうか?
(クライアントではラベルはspanになってしまうので無理だと思いますが。枠なし入力不可のテキストボックスなら出来ますが)


W3C DOM レベル1 に対応しているブラウザだったら、JavaScript を使って、要素の持つテキストをクライアントサイドで書き換えられます。
はじめてのDOM

あるいは、IE4 以降に限定するなら、JScript + DHTML を使うことでも、要素の中を書き換えることが可能です。
MSDN ライブラリの HTML Clock サンプル
DaikiRyuto
大ベテラン
会議室デビュー日: 2002/07/23
投稿数: 200
投稿日時: 2002-09-13 09:18
引用:

ちなみにフォームのtarget属性を_topに設定する
のはどうやって・・・・^^;



VS.NETでのやり方です。
aspxファイルを開いて、デザインの方ではなく、htmlのタブを選んでformタグを探してください。
それで<form (略) target="_top">のようにしてください。
ALADDIN
ベテラン
会議室デビュー日: 2002/08/20
投稿数: 85
お住まい・勤務地: 渋谷
投稿日時: 2002-09-17 11:57
ALADDINです。

で・き・ま・し・た^^
結局JavaScript使わないで、DaikiRyutoさんの書かれていたように
Session変数渡しを行いました。

皆さんのご指導感謝します。

でも、最後がResponse.Redirectでフレームセット全体を
書き換えってまりスマートじゃないですね。
贅沢は言ってられませんが・・・。
対象フレーム内のページのみ書き換えということは
本当に出来ないのでしょうか????

あと最初のページにフレームを指定してはまずいと
何かで見た記憶(MSのHPのどっか)がありますが
本当にまずいのでしょうか?

スキルアップ/キャリアアップ(JOB@IT)