먼저 내 질문의 불명확 한 제목에 대해 사과드립니다. 제목에서 내 문제를 간결하게 설명하는 방법을 잘 모르겠습니다. 숨겨진 필드가 null입니다! IsPostBack에 null이 아니고 IsPostBack에 없음
은 내가 페이지로드 이벤트 기간 동안이 필드의 값을 설정할<input type="hidden" name="hid1" value="0" />
내에서 .aspx에 숨겨진 필드가 있고, 그렇지 않은 다시 게시됩니다.
protected void Page_Load(object sender, EventArgs e) {
if (!Page.IsPostBack) {
// This doesn't work!
Request.Form["hid1"] = "1";
}
if (Page.IsPostBack) {
// This DOES work!
Request.Form["hid1"] = "1";
}
}
문제는 다시 게시하지 때 요청이 페이지로드 이벤트 동안 폼 배열의 숨겨진 필드를 포함하지 않는다는 것입니다 (예 - 페이지가 히트를 처음). 이후의 페이지 히트 (즉, 포스트 백)는 숨겨진 필드가 들어있는 Form 배열이됩니다.
페이지의 수명주기와 관련이 있다고 확신하지만 실제로 알아야 할 내용은 페이지로드 이벤트 중에 숨겨진 필드를 설정하는 방법과 다시 게시가 아닌 경우 어떻게해야합니까?
편집 : 난 정말, 정말 runat = "server"특성 포함하지 않으려는 !
밥 카우프만 (Bob Kaufman)이 맞습니다. 페이지가 다시 게시되지 않으면 요청과 함께 전송 된 양식 데이터가 없으므로'Request.Form'에는 키 "hid1"'이 채워지지 않습니다. – dlamblin
그게 내가 생각한 것 뿐이야. – Jagd