By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
435,434 Members | 2,884 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 435,434 IT Pros & Developers. It's quick & easy.

Problem with window.opener in Firefox/Mozilla

P: n/a
First a basic outline of what I am trying to do:

I want to have a page spawn a pop-up when you click "submit" on its
form. On this pop-up page there will be another form. When you click
"submit" on the pop-up's form I want the pop-up to close & a new page
to load in the "parent" window/page. I have this working in IE but
cannot get it to work in Firefox. The parent window correctly loads
the new page after submitting from the pop-up, however the pop-up will
not close. Here is what I have in my pop-up page:

<body bgcolor=#fffff0
onLoad="window.opener.name='mainPage';window.opene r.opener=window">

Basically giving a name to the parent window & then setting the parent
window's opener to the pop-up. Here is my form tag for the pop-up
page:

<form action=geturls.jsp target="mainPage" onSubmit="return
validate(this)">

So now the target of the submission from the pop-up is the initial
parent window. The next page which loads in the parent window (after
submitting from the pop-up) has the following body tag:

<body bgcolor=#fffff0 onLoad="javascript:window.opener.close()">

Since I set the pop-up as the opener of the parent window from the
pop-up html with the tag I show above, this should work. It does work
perfectly in IE but in Firefox the pop-up stays open & I get the
following javascript error:

window.opener has no properties

I am using Firefox 0.9.3.

I should also mention that the "validate()" method in pop-up needs to
return "true" if there are no validation errors with the pop-up's form
& then post the form to the main page since it loads a *different*
page (i.e. it doesn't just reload the page already loaded in the
parent window), so I cannot just call "window.close()" in the
validate() function.

Thanks!
Jul 23 '05 #1
Share this Question
Share on Google+
1 Reply


P: n/a
fogwolf wrote:
First a basic outline of what I am trying to do:

I want to have a page spawn a pop-up when you click "submit" on its
form. On this pop-up page there will be another form. When you click
"submit" on the pop-up's form I want the pop-up to close & a new page
to load in the "parent" window/page. I have this working in IE but
cannot get it to work in Firefox. The parent window correctly loads
the new page after submitting from the pop-up, however the pop-up will
not close. Here is what I have in my pop-up page:

<body bgcolor=#fffff0
onLoad="window.opener.name='mainPage';window.opene r.opener=window">

Basically giving a name to the parent window & then setting the parent
window's opener to the pop-up. Here is my form tag for the pop-up
page:

<form action=geturls.jsp target="mainPage" onSubmit="return
validate(this)">

So now the target of the submission from the pop-up is the initial
parent window. The next page which loads in the parent window (after
submitting from the pop-up) has the following body tag:

<body bgcolor=#fffff0 onLoad="javascript:window.opener.close()">

Since I set the pop-up as the opener of the parent window from the
pop-up html with the tag I show above, this should work. It does work
perfectly in IE but in Firefox the pop-up stays open & I get the
following javascript error:

window.opener has no properties

I am using Firefox 0.9.3.
It would appear that Firefox does not set window.opener when a window is
opened using the TARGET attribute alone. So open the window using
JavaScript and window.opener will be set appropriately (assuming the
window opens at all that is).

Variation on <url: http://jibbering.com/faq/#FAQ4_37 />:

<form action=geturls.jsp target="mainPage"
onSubmit="
if (validate(this)) {
window.open('', this.target);
return true;
} else {
return false;
}
"


--
Grant Wagner <gw*****@agricoreunited.com>
comp.lang.javascript FAQ - http://jibbering.com/faq

Jul 23 '05 #2

This discussion thread is closed

Replies have been disabled for this discussion.