2016-07-06 10 views
0

안녕하세요, 영어 불쌍합니다.Trouble using response.redirect

내가 Asp.net + Vb.Net 응용 프로그램이 여기에 내 문제를 설명하기위한 코드의 예입니다 : 나는이 개 버튼을 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 페이지에서 리디렉션 단추를 클릭하면 유효한 단추가 계속 액세스 할 수 있고 사용자가 유효한 단추를 클릭 할 수 있다는 것입니다.

리디렉션 클릭 후 유효한 버튼을 어떻게 비활성화 할 수 있습니까?

미리 감사드립니다.

+1

리디렉션 버튼을 클릭 한 후에 다른 버튼을 비활성화하려면 간단한 자바 스크립트가 필요합니다. – Esko

답변

0

이것을 Page_OnLoad 처리기에 배치하고 각 다시 게시에서 바인딩되어 있는지 확인하십시오. 이렇게하면 클라이언트 측의 버튼이 비활성화되고 클릭 한 후 페이지로드가 다시 발생하고 서버에 대한 응답이 완료되면 버튼이 다시 활성화됩니다.

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

이 작품은 나를 위해 고마워,하지만 왜 2 포스트 백 사이의 페이지를 사용할 수없는 이해하지만, 우리가 리디렉션 할 경우 그들은 이해가 안 돼요 ... – Christophe

+0

나는 당신이 무슨 말을하는지 명확하지 않다, 당신은 더 설명 할 수 있습니까? ? –

+0

@Christophe 리디렉션은 포스트 백과 다릅니다. 그것은 새로운 페이지가 아니라 사용자가 버튼을 클릭 한 페이지 – StingyJack