使用response.redirect时遇到麻烦

时间:2016-07-06 12:15:18

标签: asp.net vb.net response.redirect

嗨,抱歉我的英语很差。

我有一个Asp.net + Vb.Net应用程序,下面是一个说明我问题的代码示例:

首先,我有一个带有2个按钮的Default.aspx页面,“有效”和“重定向”

 Protected Sub butvalid_Click(sender As Object, e As EventArgs) Handles butvalid.Click

    If (File.Exists(Server.MapPath("log.txt"))) Then
        Dim lines() As String = IO.File.ReadAllLines(Server.MapPath("log.txt"))

        Dim tmp As Integer = Convert.ToInt32(lines(lines.Length - 1))
        tmp = tmp + 1

        File.AppendAllText(Server.MapPath("log.txt"), Environment.NewLine & tmp.ToString)
    Else
        File.WriteAllText(Server.MapPath("log.txt"), "1")
    End If

End Sub

Protected Sub Redirect_Click(sender As Object, e As EventArgs) Handles Redirect.Click
    Response.Redirect("accueil.aspx")
End Sub

有效按钮写入txt文件,重定向正在重定向...

这是accueil.aspx的page_load代码:

Threading.Thread.Sleep(3000)
Response.Redirect("default.aspx")

问题是当我点击Default.aspx页面中的Redirect按钮时,仍然可以访问有效按钮,用户可以点击Valid按钮。

重定向点击后,如何禁用“有效”按钮?

提前致谢。

1 个答案:

答案 0 :(得分:0)

将其放在Page_OnLoad处理程序中并在每次回发时触发以确保它已绑定。这将禁用客户端上的按钮,当点击完成后再次触发页面加载并完成对服务器的响应时,将再次启用该按钮。

Redirect.Attributes.Add("onclick", "javascript:"
      + butvalid.ClientID + ".disabled=true;"
      + Page.ClientScript.GetPostBackEventReference(Redirect, null));