简体   繁体   中英

How to restore the window instead of open a new one if it has the same url(and still opened from the last one )?

I use the following class to pop up a specific window , but i wanna to ask how to use the same class ,if the user clicks a button and popup window with specific URL then click the button again with the same URL , i don't want to open a new window,just the same window if it still opened.

public static void Redirect(string url, string target, string windowFeatures)
        {
            HttpContext context = HttpContext.Current;
            if ((String.IsNullOrEmpty(target) ||

                target.Equals("_self", StringComparison.OrdinalIgnoreCase)) &&

                String.IsNullOrEmpty(windowFeatures))
            {
                context.Response.Redirect(url);
            }
            else
            {
                Page page = (Page)context.Handler;

                if (page == null)
                {
                    throw new InvalidOperationException("Cannot redirect to new window outside Page context.");
                }

                url = page.ResolveClientUrl(url);
                string script;
                if (!String.IsNullOrEmpty(windowFeatures))
                {
                    script = @"window.open(""{0}"", ""{1}"", ""{2}"");";
                }
                else
                {
                    script = @"window.open(""{0}"", ""{1}"");";
                }
                script = String.Format(script, url, target, windowFeatures);
                ScriptManager.RegisterStartupScript(page, typeof(Page), "Redirect", script, true);
            }
        }

The second arguments of the window.open method is the name of the target window. If you use the same value for both calls, the second call will load its page into the previously opened window.

window.open('./a.html', 'popup', ...);
window.open('./b.html', 'popup', ...);

There will be only one window with the page b.html loaded.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM