2011-11-11 3 views
1

나는 숨겨진는 내가 페이지로드에있는 DataList에 바인딩하고페이지 포스트 백 후에 숨겨진 필드 값을 유지하는 방법은 무엇입니까?

hdnCFIV.Value = "1"; 

를 클릭 버튼을 1로 숨겨진 제기 값을 변경하고

<asp:HiddenField ID="hdnCFIV" Value="0" runat="server" /> 

을 제기

if(hdnCHIV.Value == "1") 

그러나 때마다 내 ascx 페이지를 다시로드하는 hdnCHIV.Value 0 표시, if (ifPostBack) 옆에 바인딩 코드를 유지하는 경우 다른 기능이 영향을 받게됩니다.

포스트 백에서 0으로 변경되면 숨겨진 필드 값을 유지하는 방법. 자바 스크립트 또는 다른 방법 있습니까? 누군가 나를 도와주세요.

+2

왜 버튼을 클릭하여 바인딩하지 않습니까? – V4Vendetta

+0

모든 게시물에 ascx 컨트롤을로드하고 있습니까? –

+0

@ V4Vendetta : 그래, 그걸로 노력하고있어. 한번 확인해 보자. – Rocky

답변

2

로드 이벤트는 컨트롤의 이벤트가 처리되는 것보다 먼저 발생하기 때문에 문제가 발생합니다. hdnCFIV.Value 0 그래서 DataList에 수행하지 바인딩과 동일,

  1. ASP.NET 페이지를 구문 분석이라고 0
  2. Page_LoadhdnCFIV.Value 속성을 설정 : 그래서 현재의 흐름이 같다. 처리
  3. 버튼 클릭, hdnCFIV.Value가 수행해야이 문제를 해결하려면 1.

로 설정 hdnCFIV.Value이 이미 1로 설정하면 DataList에 나중에 바인딩, 동일한 버튼 클릭으로이 작업을 수행 할 수 있습니다 처리기 또는 Page_PreRender

관련 문제