4

我有一个表单,用户可以在其中输入数据,我正在寻找的行为是在提交之后,后面的代码写入数据库并向页面返回成功响应。我目前正在使用此代码。我希望发生的下一个项目是在成功消息之后重定向,但我想延迟 2 或 3 秒,让用户在重定向之前看到成功消息。

行为:提交 -> 显示成功消息 -> 延迟 3 秒 -> 重定向

我目前正在用 VB 开发它;但是我对 VB 或 C# 中的示例都很好。这是一种传统的网络形式。

4

3 回答 3

5

我喜欢这种方法,尽管已经提出的一些方法非常好:

protected void Button1_Click(object sender, EventArgs e)
{
    ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "success", "alert('Submitted Successfully.'); setInterval(function(){location.href='http://www.google.com';},3000);", true);
}

祝你好运!

于 2012-08-31T17:58:41.017 回答
4

您可以使用 Thread.Sleep() 方法。只需在 Response.Redirect 之前添加它,即

System.Threading.Thread.Sleep(3000);
Response.Redirect("MyURL");

或者,您可以像这样在响应标头中添加延迟

Response.AddHeader "REFRESH","3;URL=MyURL"

上面的数字表示以秒为单位的延迟值。

于 2012-08-31T16:33:46.070 回答
2

您可以使用 html元刷新标签

只需将以下代码放在包含成功消息的页面的 head 部分中。

<meta http-equiv="refresh" content="3;URL='http://nextpageurlaftersuccess.com/'">
于 2012-08-31T16:33:59.917 回答