- PR -

IsPostBackがFalseのままになる

1
投稿者投稿内容
ひろくん
会議室デビュー日: 2003/07/21
投稿数: 6
投稿日時: 2003-07-21 19:10
ひろくんです。初めて利用させてもらいます。よろしくお願いします。

ある画面でフレーム分割をして複数のaspxを表示しています。
Page_Load内で最初と2回目以降とを判別するためIsPostBackを使っているのですが
メインの画面は2回目以降IsPostBack=TRUEになりますが、サブ画面(フレーム表示している画面)はIsPostBackがずっとFalseのままです。
これは仕様なのでしょうか?それとも何か指定をしなくてはいけないのでしょうか?
教えてください。よろしくお願いします。

【環境】Windows2000Pro,VisualStudio2002,VB.NET
小野@どっとねっとふぁん
ぬし
会議室デビュー日: 2001/10/30
投稿数: 402
投稿日時: 2003-07-22 12:34
メイン画面に対してPostBackが起きるとき(メイン画面上のボタンが押されたとき等)は
メイン画面のIsPostBackがtrueになる。
サブ画面に対してPostBackが起きるとき(サブ画面上のボタンが押されたとき等)は
サブ画面のIsPostBackがtrueになる。
メイン画面とサブ画面の両方に対して一度にPostBackを起こさせることはできないと
思います。

#これで答えになるかな?
ひろくん
会議室デビュー日: 2003/07/21
投稿数: 6
投稿日時: 2003-07-24 02:04
小野様
ご返答ありがとうございます。
そういうことだったのですね。理解不足でした。

重ねて質問して申し訳ないのですが、メイン画面のボタンを押したとき、メイン画面・サブ画面の両方のIsPostBackをTrueにする方法はないのでしょうか。

よろしくお願いします。
TomScissors
ベテラン
会議室デビュー日: 2003/06/05
投稿数: 79
投稿日時: 2003-07-24 11:13
引用:

小野@EACさんの書き込み (2003-07-22 12:34) より:
メイン画面とサブ画面の両方に対して一度にPostBackを起こさせることはできないと
思います。



出来ません。

親フレームにてセッション変数を操作する方法でできるかもしれません。
(メインとサブは親フレームでセットされた値を見る)
mito
ベテラン
会議室デビュー日: 2002/05/17
投稿数: 50
投稿日時: 2003-07-24 11:59
メイン画面のボタンが押されたときにJavascriptか何かでサブ画面もSubmitしてしまえば、両方ともPostBackさせることが出来るのでは?
試してないので推測ですが。。。
suzuki
会議室デビュー日: 2003/07/24
投稿数: 1
投稿日時: 2003-07-24 13:28
<サブフレームがsub.aspxという名前で、左側にある場合>

メイン側のHTMLに

<form name="XXXX" action="sub.aspx" method="post" target="left">
</form>

と記述し、

(.vbファイル)
メインのボタンが押されたときの処理に

Dim sbScript As New System.Text.StringBuilder()
With sbScript
.Append("<script language='javascript'>" & vbCrLf)
.Append(vbTab & "XXXX.submit();" & vbCrLf)
.Append("</" & "script>")
End With
RegisterClientScriptBlock("closewin", sbScript.ToString)

と記述すれば、左右同時にPostbackを走らせることが可能です。



#ご自身の環境に合わせて細部は改良してください

[ メッセージ編集済み 編集者: suzuki 編集日時 2003-07-24 13:30 ]
ひろくん
会議室デビュー日: 2003/07/21
投稿数: 6
投稿日時: 2003-07-25 00:14
みなさま、ありがとうございます。
早速チャレンジしてみます。
ありがとうございました
1

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