- PR -

子画面のクローズがうまくいきません

1
投稿者投稿内容
Jetta
常連さん
会議室デビュー日: 2008/10/15
投稿数: 44
投稿日時: 2009-01-23 02:48
asp.net VS2005 でwebの開発をしています。

親画面にて「表示」ボタンをクリックして子画面を表示し、子画面で「戻る」ボタンのクリックで子画面をクローズし親画面に戻る処理を行っているのですが、子画面で「戻る」ボタンをクリックすると再度子画面が表示されてしまいます。
再表示された子画面で再度「戻る」ボタンをクリックすると子画面は消えます。

実装は以下のようになります(親画面、子画面共に、xxx.aspx.vbファイルのPage_Loadに実装しています)。

■親画面
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
'子画面にデータを引き渡す
Dim sbScript As New System.Text.StringBuilder()
sbScript.Append("ret = window.showModalDialog('kogamen2.aspx?todate=' + " & TextBox1.ClientID & ".value,'', 'dialogWidth:500px;dialogHeight:350px;');")
sbScript.Append(TextBox1.ClientID & ".value=ret;")
sbScript.Append("return false;")
Button1.Attributes("onclick") = sbScript.ToString()
End Sub

■子画面
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If IsPostBack = False Then
TextBox1.Text = Request.QueryString("wkdata")
Dim sbScript As New System.Text.StringBuilder()
sbScript.Append("window.returnValue = " & TextBox1.ClientID & ".value;")
sbScript.Append("window.close();")
Button1.Attributes("onclick") = sbScript.ToString()
End If
End Sub


この記述では子画面の window.close がうまく動作しないのでしょうか?
どなかたご存知の方がおられましたらご教授頂けると助かります。

よろしくお願い致します。
ぴあちゃん
ぬし
会議室デビュー日: 2008/02/07
投稿数: 287
投稿日時: 2009-01-23 09:52
スレッドの検索するといいことあるかも。

108
常連さん
会議室デビュー日: 2007/12/12
投稿数: 45
投稿日時: 2009-01-23 09:54
子画面の
<head></head>の間に
<base target="_self"/>
でどうでしょう。

あ;
ぴあちゃんさんの言うとおり。

http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=20782&forum=7

[ メッセージ編集済み 編集者: 108 編集日時 2009-01-23 09:57 ]
Jetta
常連さん
会議室デビュー日: 2008/10/15
投稿数: 44
投稿日時: 2009-01-24 01:22
108さん

レス遅くなりすいません。

> 子画面の
> <head></head>の間に
> <base target="_self"/>
> でどうでしょう。

この対応を入れたら画面が一度で消えました。
大変助かりました。

ありがとうございました。
1

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