Solved

How to disable parent form when any popup form is open

Posted on 2009-05-07
11
1,826 Views
Last Modified: 2013-12-08
hi all ,

  I want to disable (Means i can not click on the window until and unless i close the pop up window ) the paraent window when my pop up window is open

 In my requirment i can not use model popup control provided by AJAX .

 I am using windows.open method to open the pop up menthod ,

I have tried the way given in one post

http://www.hscripts.com/scripts/JavaScript/disable-parent-window.php
http://www.thescripts.com/forum/thread521036.html

the method given here is fine but it is not allowing me to do any thing on the pop up also
 
In my pop up i have FileUpload control , so it is not allowing me to upload the File

Please suggest some way to do that.
0
Comment
Question by:spikyhappy
  • 6
  • 2
  • 2
  • +1
11 Comments
 
LVL 75

Expert Comment

by:Michel Plungjan
ID: 24333805
0
 

Author Comment

by:spikyhappy
ID: 24334629
This solution is not useful in my case

 Please tell me , can i freeze the parent window till pop up is open ?
0
 
LVL 75

Expert Comment

by:Michel Plungjan
ID: 24335011
Not sure what you mean

If you want a modal solution you need something like I gave you or use the IE and FF3 only showModalDialog
0
MIM Survival Guide for Service Desk Managers

Major incidents can send mastered service desk processes into disorder. Systems and tools produce the data needed to resolve these incidents, but your challenge is getting that information to the right people fast. Check out the Survival Guide and begin bringing order to chaos.

 
LVL 8

Accepted Solution

by:
Bobaran98 earned 50 total points
ID: 24342298
I suggest you avoid any type of genuine popup and just go entirely with <div> tag formatting.  I could go into great detail explaining, but instead, just paste my code below into a fresh page and load 'er up!  I think you'll see immediately the possibilities in this kind of solution.

Note that this code is completely cross-browser compatible, working in:

Win - IE7
Win - FireFox
Win - Opera
Win - Chrome
Win - Netscape 6
Mac - FireFox
Mac - Safari
Mac - Opera
Mac - Netscape 6


<html>
<head>
 
<STYLE type="text/css">
   .fadeScreen {
		position:absolute;
		top:0px;
		left:0px;
		width:105%;
		height:100%;
		background:#FFFFFF;
		visibility:hidden;
		filter:alpha(opacity=50);
		opacity:0.50;
		-moz-opacity:0.50;
		-khtml-opacity:0.50;
   }
   .fadeScreenContent {
		position:absolute;
		top:0px;
		left:0px;
		width:105%;
		height:100%;
		visibility:hidden;
   }
   .modalWindow {
		width:300px;
		height:200px;
		background:#AAAAAA;
		border:1px solid #000000;
	}
	.modalWindowCell {
		text-align:center;
		vertical-align:middle;
		padding:20px;
	}
</STYLE>
 
 
<script language="javascript1.2">
	function popupVizToggle() {
		obj1 = document.getElementById('fadeScreen').style;
		obj2 = document.getElementById('fadeScreenContent').style;
		if(obj1.visibility == "visible") { 
			obj1.visibility = "hidden";
			obj2.visibility = "hidden";
		} else { 
			obj1.visibility = "visible";
			obj2.visibility = "visible";
		}
	}	
</script>
 
</head>
<body background="http://dl.img.qj.net/uploads/files_module/screenshots/253_PSP-background-thor64.jpg">
 
<input type="text" id="testText" value="Sample Element on Main Page" size="50"><p>
<input type="submit" id="testButton" value="Open Modal Window" onclick="popupVizToggle();">
 
<div id="fadeScreen" class="fadeScreen"> </div>
 
<div id="fadeScreenContent" class="fadeScreenContent">
	<table width="100%" height="100%"><tr><td valign="middle"><center>
		<table class="modalWindow"><tr><td class="modalWindowCell">
			Here's your so-called modal window.  Note that you can't click or select anything outside this "window" while it's visible!<p>
			<input type="submit" id="testButton2" value="Close Modal Window" onclick="popupVizToggle();">
		</td></tr></table>
	</td></tr></table>
</div>
 
</body>
</html>

Open in new window

0
 
LVL 75

Expert Comment

by:Michel Plungjan
ID: 24342518
That looks good. Did you write this yourself?
0
 
LVL 8

Expert Comment

by:Bobaran98
ID: 24342583
Yep.  It's a simplified variation on something I designed a month or two ago... my company has a web-based reporting application that our clients use to access up-to-the-minute data... but unfortunately, some of the reports can take 10+ seconds to load because there are so many records getting pulled.  In some situations, some form elements would show when the page was only half loaded, and there was always this risk of clients clicking something early and causing JavaScript errors because the page wasn't loaded yet.  So that's why I created the half-opaque <div>, so the user could see what was happening on the page without being able to access any of it.  And then it was a simple matter to superimpose an animated "loading" gif to make it look more polished.

I'm glad you like it, mplungjan.  And on that note, I'll take your advice and go to bed... does that count has having a life?  :-)
0
 
LVL 75

Expert Comment

by:Michel Plungjan
ID: 24342591
Sleep well. I am in CET so just got up 2.5 hours ago
0
 

Author Closing Comment

by:spikyhappy
ID: 31579323
This solution is very much useful
 thanks
0
 
LVL 75

Expert Comment

by:Michel Plungjan
ID: 24401418
@spikyhappy, not only do you only assign 50 points, but you also only give a "B" grade for a great solution. Can you please comment on the choice of grade?
0
 

Expert Comment

by:Nico2011
ID: 37724605
Hello - I like this, but need to do something similar with a form that can then add data into a DB - is there any way that can be done using your code please...?  I hve tried, but it doesn't look as if the parent page can be updated when the pop up is closed... Thanks in advance for any help you can give!
0
 
LVL 75

Expert Comment

by:Michel Plungjan
ID: 37726079
Try changing
<input type="submit" id="testButton2" value="Close Modal Window" onclick="popupVizToggle();">
to

<input type="button" id="testButton2" value="Close Modal Window" onclick="popupVizToggle();location.reload(1)" />
0

Featured Post

Resolve Critical IT Incidents Fast

If your data, services or processes become compromised, your organization can suffer damage in just minutes and how fast you communicate during a major IT incident is everything. Learn how to immediately identify incidents & best practices to resolve them quickly and effectively.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In threads here at EE, each comment has a unique Identifier (ID). It is easy to get the full path for an ID via the right-click context menu. However, we often want to post a short link within a thread rather than the full link. This article shows a…
A quick Powershell script I wrote to find old program installations and check versions of a specific file across the network.
The viewer will learn how to count occurrences of each item in an array.
This Micro Tutorial will demonstrate how nuggets on the Web are formatted by using Chrome Developer Tools. These tools would not only view the site's CSS but it can also modify it and save the CSS to use on your own site.

749 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question