Window.Opener Creating A Refresh In Parent Window


S

Steve Wark

I have created a ASP.NET application and created two forms within the
application (Webform1.aspx & Webform2.aspx). On the first form I have
placed a textbox (TextBox1) and a button, which when clicked opens the
second form using the window.open(). On the second form I have a textbox
(TextBox1) and a button as well. When the second button is clicked it
closes the second window with window.close(). What I need to happen is a
refresh to happen on the original form so that the value passed back from
the second window is displayed in the textbox.

Webform1 Button Click Event
Private Sub LinkButton1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles LinkButton1.Click

Dim popupScript As String = "<script language='javascript'>" &
"window.open('webform2.aspx', 'CustomPopUp', " & "'width=600, height=400,
menubar=no, resizable=no, top=200, left=200')" & "</script>"

Page.RegisterStartupScript("PopupScript", popupScript)

End Sub



Webform2 Button Click Event

Private Sub LinkButton1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles LinkButton1.Click

Dim popupScript As String = "<script language='javascript'>" &
"window.opener.document.forms(0).value=" & Chr(34) & TextBox1.Text & Chr(34)
& ";window.close();window.opener.location.href =
window.opener.location.href" & "</script>"

Page.RegisterStartupScript("PopupScript", popupScript)

End Sub

I have tried various options but none seem to work. Can anyone advise?



Cheers

Steve
 
Ad

Advertisements

C

Craig Deelsnyder

I have created a ASP.NET application and created two forms within the
application (Webform1.aspx & Webform2.aspx). On the first form I have
placed a textbox (TextBox1) and a button, which when clicked opens the
second form using the window.open(). On the second form I have a textbox
(TextBox1) and a button as well. When the second button is clicked it
closes the second window with window.close(). What I need to happen is a
refresh to happen on the original form so that the value passed back from
the second window is displayed in the textbox.

Webform1 Button Click Event
Private Sub LinkButton1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles LinkButton1.Click

Dim popupScript As String = "<script language='javascript'>" &
"window.open('webform2.aspx', 'CustomPopUp', " & "'width=600, height=400,
menubar=no, resizable=no, top=200, left=200')" & "</script>"

Page.RegisterStartupScript("PopupScript", popupScript)

End Sub



Webform2 Button Click Event

Private Sub LinkButton1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles LinkButton1.Click

Dim popupScript As String = "<script language='javascript'>" &
"window.opener.document.forms(0).value=" & Chr(34) & TextBox1.Text &
Chr(34)
& ";window.close();window.opener.location.href =
window.opener.location.href" & "</script>"

Page.RegisterStartupScript("PopupScript", popupScript)

End Sub

I have tried various options but none seem to work. Can anyone advise?



Cheers

Steve


you're closing the second window before refreshing the opener; closing the
window stops the script right there, so the next line never runs. Switch
those around, .close() is the last thing to do....

btw, why do you need a refresh immediately? You can put the value back
into the opener's textbox and not need to force a refresh....just FYI
 
S

Steve Wark

I tired you suggestion but it did not work, can you point me to a code
snippet ?

Steve
 
Ad

Advertisements

B

bruce barker

you have a couple problems:

1) webform1 uses code that will not work with a popup blocker (say xp-sp2)
2) webform1 close itsself before doing anything
3) webform1 tries to update a textbox, but then forces a reload that will
replace this value with tthe server version

-- bruce (sqlwork.com)

Steve Wark said:
I tired you suggestion but it did not work, can you point me to a code
snippet ?

Steve

is
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top