You can use the showModalDialog() function instead of open() function. This way, the user will not be able to interact with the opener window until the popup is closed.
_______________
Nayer Naguib
Main Topics
Browse All TopicsHello Experts,
I 've already opened the same question here
http://www.experts-exchang
and the Expert doesn't know C#, so I didn't get full reply. But this is urgent, and please probably someone who is Guru in both: C# and JavaScript, or someone who has solution for my question which has been tested.
The problem is:
I have MainSite.aspx and the button btnOK that has btnOK_Click event. On the btnOK click event I want to open new web site (ConfirmationWindow.aspx) by passing a few input parameters from the main site. For example with one parameter:
this.btnOK.OnClientClick = "window.open('WindowConfir
and btnOK_Click event which is called as
OnClick="btnOK_Click".
ConfirmationWindow.aspx contains gridview which will be bound with the stored procedures result according to the input parameters values from the MainSite.aspx and two buttons btnYES, and btnNO.
The question is, How can I get the response from the user click on btnYES or btnNO inside ConfirmationWindow.aspx back to my MainSite, and if the response is YES to finish MainSite-btnOK_Click . If response is NO then just close the ConfirmationWindow.aspx. And yes, after pressing one of the buttons either Yes or No, ConfirmationWindow.aspx should be automatically closed.
It would be nice to call return Java Script function which can return true if the user press btnYes, but question is how to do this ?
Also, is ti possible to prevent opening of more then one ConfirmationWindow.aspx. If user press once, ConfirmationWindow.aspx will open, but I want to prevent opening of the ConfirmationWindow.aspx again if it is already open.
I thinks that here is the main problem how to wait for the user response and then return true value which will in that case call the "btnOK_Click" event proc.
Many thanks !
This Question has been solved and asker verified All Experts Exchange premium technology solutions are available to subscription members.
Experts Exchange has been collecting answers to technology questions since 1996…3 million and counting! If you have a question, chances are we already have your answer.
If you can't find the exact answer you're looking for, ask our exclusive community of 50,000 experts. You’ll get a personalized answer from a trusted professional.
Thousands of free tech tips, tricks, how-to’s and tutorials are available in our peer reviewed articles section. See for yourself how smart our experts are, no login required.
Access the answers to your technology questions today.
30-day free trial. Register in 60 seconds.
Members of the expert community talk about why the experience at Experts Exchange is different than what you will find anywhere else.

Try it out and discover for yourself.
30-day free trial. Register in 60 seconds.
Join the community of experts here and help other tech pros by answering question in your area of expertise. You can earn FREE access to all Experts Exchange's premium features and resources.
I think the solution showModalDialog() is the answer for me if you have some exaple how I can implement this in my case by using C# and JavaScript. And I don't need anymore response from the child to parent, because I will move my C# function from parent to child, and if it is Yes it should run my C# function in the child window.This makes my life easier :)
Now, the question is how to call window.showModalDialog() from the parent site on button click ?
If I simply change open () to showModalDialog() it doesn't work. Probably, I need different parameters.
Also, I have to pass parameters from the parent site to child site in the showModalDialog(), because I want to run C# function in the child site if the answer is YES. I will add on child:
<input type="button" onclick="btnYes_Click" value="Yes">
<input type="button" onclick="proceedNo()" value="No">
protected void btnYES_Click(object sender, EventArgs e)
{
.. My Code which is calling stored procedure in DB and using parameters from the parent site ...
....
Response.Write("<script language=javascript>");
Response.Write("window.clo
Response.Write("</script>"
}
On parent window I need to change this
this.btnOK.OnClientClick = "window.open('WindowConfir
to the window.showModalDialog(...
Thanks a lot !
You can find the description of the parameters passed to showModalDialog() along with an example on the following page:
http://msdn2.microsoft.com
_______________
Nayer Naguib
Business Accounts
Answer for Membership
by: frinPosted on 2007-09-30 at 10:02:43ID: 19987387
On parent window use code like this:
aspx', 'confirmation', 'true'); ontents'). innerHTML = 'Yes clicked.';
;
<script language="JavaScript" type="text/javascript">
function proceed() {
confirmation = window.open('confirmation.
}
function yesClicked() {
document.getElementById('c
}
</script>
<input type="button" onclick="proceed()" value="Confirmation">
<div id="contents"></div>
On child use this:
<script language="JavaScript" type="text/javascript">
function proceedYes() {
window.opener.yesClicked()
window.close();
}
function proceedNo() {
window.close();
}
</script>
<input type="button" onclick="proceedYes()" value="Yes"> <input type="button" onclick="proceedNo()" value="No">