编程语言
首页 > 编程语言> > c# – 如何在执行Response.Redirect之前显示/隐藏面板

c# – 如何在执行Response.Redirect之前显示/隐藏面板

作者:互联网

我有一个表单,一旦完成就启动Response.Redirect下载文件.我还想在重定向发生之前隐藏表单并显示“谢谢”面板,但是在以下代码中,似乎asp.net引擎只执行重定向而不执行2个任务:

if (success)
                {
                    lblSuccessMessage.Text = _successMessage;
                    showMessage(true);                        
                }
                else
                {
                    lblSuccessMessage.Text = _failureMessage;
                    showMessage(false);
                }

                if(success)
                    Response.Redirect(_downloadURL); 

知道如何在重定向开始之前强制页面更新吗?

谢谢堆
格雷格

解决方法:

if (success)
                {
                    lblSuccessMessage.Text = _successMessage;
                    showMessage(true);                        
                }
                else
                {
                    lblSuccessMessage.Text = _failureMessage;
                    showMessage(false);
                }

                if(success) {
                    Threading.Thread.Sleep(200)
                    Response.Redirect(_downloadURL);
                }

您可以通过使线程休眠来强制它在重定向之前等待.

最好的,最友好的用户选择是让用户通过添加按钮继续自己.例如,您可以执行以下操作:

if (success)
                {
                    lblSuccessMessage.Text = _successMessage + "<br /><INPUT TYPE='button' VALUE='Continue...' onClick='parent.location='" + _downloadURL + "'/>";
                    showMessage(true);                        
                }
                else
                {
                    lblSuccessMessage.Text = _failureMessage;
                    showMessage(false);
                }

标签:c,redirect,asp-net,response-redirect
来源: https://codeday.me/bug/20190622/1260962.html