Solved

How to use showModalDialog in asp.net?

Posted on 2003-10-29
6
793 Views
Last Modified: 2012-06-27
On WebForm1.aspx, I have a linkbutton to call a JavaScript function to show a modal web page, WebForm2.aspx. Like this:

function ShowNewPage()
{
window.showModalDialog("WebForm2.aspx","","width=400; height=200; resizable=yes; scrollbars=yes; top=300; left=300");
}

On WebForm2.aspx, I have a web control button. If I click on it, something weird happened. Instead of post back to the same page (WebForm2.aspx), it opens another web page, which is unexpected behavior.

Does anybody know how to fix this problem and let modal web page post back to itself?

Thanks a lot.
0
Comment
Question by:BruceCheng
6 Comments
 
LVL 2

Expert Comment

by:Inteliscape
ID: 9650386
this is how in one page.

<HTML>
<HEAD>
<TITLE>page1.HTM</TITLE>
</HEAD>
<BODY>
<INPUT type=textbox id=mmytext tabIndex=1>
<SCRIPT>
function ShowNewPage()
{
mmytext.value=window.showModalDialog("page1.HTM","","width=400; height=200; resizable=yes; scrollbars=yes; top=300; left=300");
return;
}
function leave(ret){
      window.returnValue = ret;
      window.close();
}
</SCRIPT>
<br>
<INPUT id=button1 onclick=leave(false); tabIndex=1 type=button value=No>&nbsp;&nbsp;&nbsp;
<INPUT id=button2 onclick=leave(true); tabIndex=2 type=button value=Yes>
<br>
<div onClick="ShowNewPage()"><b>Click Here</b></div>
</BODY>
</HTML>
0
 
LVL 1

Author Comment

by:BruceCheng
ID: 9650540
I know how to use showModalDialog. My question is, in case of .NET, if the modal page (in your case page1.HTM) post back to itself, it opens a new modaless windows.

Which is, in my example, on the opened modal window, WebForm2.aspx, if I click a button or select an new item from a drop down list, WebForm2.aspx will post back to itself automatically. At this time, instead of refreshing the same WebForm2.aspx, it opens another modaless page. How can I just refresh the same modal window page without opening a new window.

Thanks.
0
 
LVL 2

Accepted Solution

by:
Inteliscape earned 250 total points
ID: 9663429
There is no any direct solution.

But you can work with iframes or layers.

something like this in the modal page

<iframe id = "tst" width="100%" height="100%"  src="WebForm2.aspx"> </iframe>

the rest are easy you have a full functional page and the id of the page.

i hope know its ok.



0
Master Your Team's Linux and Cloud Stack!

The average business loses $13.5M per year to ineffective training (per 1,000 employees). Keep ahead of the competition and combine in-person quality with online cost and flexibility by training with Linux Academy.

 

Expert Comment

by:muffish
ID: 11715553
Bruce Cheng,

In the child form ,you open html view.
You will find html tag <body >

type in property,  onblur="this.focus"

this is how it looks like

<BODY  onblur="this.focus">


0
 

Expert Comment

by:Polyktor
ID: 11750363
This is all the code you need to avoid the new windows on postback with showModalDialog:

      <base TARGET="_self">

Put this in your <head> tag on your page.

You don't need to mess with other frames. I'm glad I found this before going the frames route.

-R
0
 

Expert Comment

by:HappySurfer
ID: 11757402
Thanks Polyktor

It is a better solution than using a empty page with a iframe.
0

Featured Post

Gigs: Get Your Project Delivered by an Expert

Select from freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely and get projects done right.

Question has a verified solution.

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

IP addresses can be stored in a database in any of several ways.  These ways may vary based on the volume of the data.  I was dealing with quite a large amount of data for user authentication purpose, and needed a way to minimize the storage.   …
In my previous two articles we discussed Binary Serialization (http://www.experts-exchange.com/A_4362.html) and XML Serialization (http://www.experts-exchange.com/A_4425.html). In this article we will try to know more about SOAP (Simple Object Acces…
This Micro Tutorial demonstrates using Microsoft Excel pivot tables, how to reverse engineer competitors' marketing strategies through backlinks.
This video shows how to quickly and easily add an email signature for all users on Exchange 2016. The resulting signature is applied on a server level by Exchange Online. The email signature template has been downloaded from: www.mail-signatures…

813 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

Need Help in Real-Time?

Connect with top rated Experts

17 Experts available now in Live!

Get 1:1 Help Now