2013-09-23 2 views
1

사용자가 브라우저에서 뒤로 버튼을 누르면 이벤트가 예기치 않게 발생하는 문제가 있습니다. 여기 단계가 있습니다.ASP.NET 브라우저 뒤로 실행 버튼 이벤트

  1. 사용자는 버튼 (화재 btnNewSurvey_Click)
  2. 브라우저 표시 창을 팝업
  3. 사용자가 팝업을 닫고 별도의 링크에서 두 번째 페이지로 이동을 클릭합니다.
  4. 브라우저는 두 번째 페이지를 표시
  5. 사용자는
  6. btnNewSurvey_Click이가 발생하는 이유가 궁금했다 (이 문제입니다)

다시 해고 다시 클릭합니다. asp.net의 페이지 수명주기뿐만 아니라 페이지 캐싱을 해제했지만 설명에 도달 할 수 없습니다.

더 이상 정보가 필요하면 알려주세요. 감사!

UPDATE : 그것은 사용자가 크롬에서 다시 클릭 할 경우에만

영문

<asp:Button ID="btnNewSurvey" runat="server" Text="New Survey" OnClick="btnNewSurvey_Click" /> 

aspx.cs

protected void btnNewSurvey_Click(object sender, EventArgs e) 
{ 
    rwScreenList.VisibleOnPageLoad = true; 
    rwScreenList.Visible = true; 
    ListBox lbox = rwScreenList.ContentContainer.FindControl("lboxScreenSelection") as ListBox; 
    ((Label)rwScreenList.ContentContainer.FindControl("lblScreenError")).Text = ""; 
    lbox.DataSource = DatabaseFactory.GetScreensForProject(ProjectId); 
    lbox.DataBind(); 
} 

문제를 해고하는 버튼 클릭 이벤트처럼 보인다 사용자가 다른 페이지에서 다시 조회 할 때이 이벤트가 호출된다는 것입니다.

+0

코드를 넣을 수 있습니까? –

답변

0

문제가 될 것 같다 당신의 rwScreenList.VisibleOnPageLoad = true;

내가이 telerik되는 속성을보고이 속성을 사용할 때 어떤 일을 통해 갈 필요가있다.

은이도 같이 수행 할 수 있습니다

rwScreenList.VisibleOnPageLoad = !Page.IsPostBack; 

당신이 문제에서 해결하는 데 도움이 될 것입니다 토론 아래를 참조하십시오.

+0

문제는 버튼 클릭 이벤트가 먼저 발생한다는 사실입니다. 해당 이벤트 블록의 모든 것을 주석 처리하더라도 여전히 해고됩니다. –

+0

u 페이지로드시 디버거를 계속 사용 하시겠습니까? 페이지로드가됩니까? –

+0

사용자가 두 번째 페이지에서 돌아 오면 디버거가 페이지를 먼저 누르십시오. 나는 거기서 끝날 것이라고 생각했지만, 그 후에는 btnNewSurvey_Click을 친다. –