32

I've got a popup window opened using window.open(). What I want now is for a user to be able to click one of 2 links within this new window: "Allow" or "Don't Allow".

When a user clicks one of those links the 'popup' window should close, and return either "allow" or "don't allow" or something along those lines, true/false would do, to the parent window.

Is it possible? If so, how?

Code:

var authWindow = window.open('auth.php', 'authWindow', 'options...');

Then just 2 anchors inside auth.php?

Sharon
  • 919
  • 7
  • 7
Joey Emery
  • 684
  • 2
  • 6
  • 14
  • did you tried something on your own so far ? You could use modal popups – mas-designs Feb 14 '12 at 11:34
  • Code posted? Although I don't really see the need, haha. – Joey Emery Feb 14 '12 at 11:42
  • What are you going to be doing with these values afterwards? – Anthony Grist Feb 14 '12 at 11:45
  • 1
    personally i try to avoid window popups. Normally I use jquery-ui dialogs (or flowtools overlay, or wijmo dialogs) to simulate pop-up behavior. IMO it looks nicer, is cleaner and avoids problems with browsers blocking popups - just a small remark :) – giorgio Feb 14 '12 at 11:54

2 Answers2

67

In the calling (parent) window add such JS code:

function HandlePopupResult(result) {
    alert("result of popup is: " + result);
}

In the child window code add this:

function CloseMySelf(sender) {
    try {
        window.opener.HandlePopupResult(sender.getAttribute("result"));
    }
    catch (err) {}
    window.close();
    return false;
}

And have such links to close the popup:

<a href="#" result="allow" onclick="return CloseMySelf(this);">Allow</a>
<a href="#" result="disallow" onclick="return CloseMySelf(this);">Don't Allow</a>
Shadow Wizard Says No More War
  • 64,101
  • 26
  • 136
  • 201
4

you can use window.opener for this.

Chamika Sandamal
  • 22,932
  • 5
  • 63
  • 83