2012-03-25 2 views
0

나는 Umbraco를 사용하고 있으며, 모든 페이지는 기본적으로 다른 마스터의 서브 마스터 인 마스터 페이지입니다. 따라서 페이지 당 여러 PAGE_LOAD 통화가 이루어지기 때문에 게시 된 양식간에 distingiush를 수행하는 방법이 필요합니다. (그래서 각 양식에 대해 게시 된 데이터를 처리하기 위해 조건부 처리를 실행할 수 있습니다.)게시 된 양식을 구분하는 방법은 무엇입니까?

IE page.ispostback 또는 무엇이든간에 항상 폼이 숨겨진 필드를 포함하고 어떤 폼이 게시되었는지 확인하기 위해 숨겨진 필드를 포함 할 수 있다고 생각했습니다. 어떻게해야합니까? ?

답변

1

다른 웹 폼 응용 프로그램과 동일하게 간주해야합니다.

따라서 반드시 Page_Load 이벤트에서 포스트 백을 처리하지 마십시오.

'양식 검색'과 '뉴스 레터 신청 양식'이 있다고 가정 해 보겠습니다. 각각의 제출 단추는 동일한 페이지의 다시 게시를 초래합니다. 이 단추에 이벤트를 첨부하여 양식 제출물을 포착하고 Page_Load가 아닌이 시점에서 제출 기능을 처리 할 수 ​​있습니다.

나는 일반적으로 모든 논리를 끄는 btnSubmit_OnClick(object sender, EventArgs e)이있는 코드 숨김이있는 별도의 usercontrols로 모든 미니 양식을 분리합니다.

각 필드 컬렉션에 고유 한 ValidationGroup 속성 값을 사용하여 하나의 양식을 제출해도 다른 양식의 유효성을 검사하지 않도록 할 수 있습니다.

이 장점은 다른 기능에 대한 usercontrols 라이브러리를 구축 할 수 있다는 것입니다.이 라이브러리는 모두 서로 독립적입니다. 나는 종종 이들을 들어 올려 Umbraco 프로젝트에서 다음 프로젝트로 재사용 할 수 있다는 것을 알게됩니다.

관련 문제