如何等待三秒然后转到另一个网页

时间:2011-03-29 21:43:34

标签: asp.net

我是网络开发的新手,我目前正在使用ASP.net。我想知道如果让浏览器等待3秒钟我需要做什么才能让我的用户在转到另一个页面之前阅读“客户成功添加”文本?我附上了我的代码如下。

Protected Sub btnAdd_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnAdd.Click
    Dim db As New DatabaseClass
    db.addProfile(txtLN.Text, txtFN.Text, txtUsername.Text, txtPassword.Text, txtAddress.Text, txtZip.Text, txtPhone.Text, txtEmail.Text)
    lblMessage.Text = "Customer Successfully Added"
End Sub

另外,我不确定如何利用MSDN。对我来说,它的信息过载,我想知道如何在MSDN上找到解决方案,以便我将来能够解决我的问题。谢谢!

3 个答案:

答案 0 :(得分:3)

由于asp.net的工作原理,你无法在页面后面的代码中执行此操作 - 如果在代码隐藏中执行此操作,标签文本将在超时发生后才会更新。

服务器端处理只有在完全处理了任何服务器端代码之后才将所有html重新发送回浏览器,除非您使用的是Ajax。既然你是新手,我甚至不愿意去研究如何使用Ajax,因为有一个更简单的选项来完成你想要的。

一个简单的方法来完成你正在寻找的是一个简单的HTML页面,它只有一条消息“客户成功添加”并使用javascript(客户端代码)暂停然后使用Javascript“SetTimeout”功能。

这里有一个例子:http://www.bloggingdeveloper.com/post/JavaScript-Url-Redirect-with-Delay.aspx

逻辑流程应该像这样工作:

原始页面应该添加记录(在代码隐藏中),然后重定向到这个简单的html页面(在代码隐藏中)。 html页面应该有“Customer Added”消息,并使用SetTimeout和Redirect转到您希望用户在查看消息后看到的任何页面。

答案 1 :(得分:1)

对于这样的东西,你需要代码来运行客户端而不是服务器。最简单的方法是在页面上返回一些javascript(在.aspx部分而不是后面的代码中)

看看here,了解该怎么做:)

页面显示几秒钟,然后javascript触发重定向到您选择的网址。只需将这样的内容添加到您的HTML中。

答案 2 :(得分:0)

您可以使用setTimeout功能发出javascript以重定向到其他页面。

最好使用ScriptManager在页面上注册任何javascript。