2009-10-08 5 views
0

기존 메서드 호출을 사용하여 asp.net에서 사용자 입력의 유효성을 검사하는 방법이 무엇인지 궁금합니다. 나는 이것을 지금까지 몇 가지 방식으로 구현했으며 모든 것이 작동하는 동안 더 나은 또는 "최적의"방법이있을 수 있다는 감각을 얻었습니까?기존 방법으로 ASP.net 컨트롤의 유효성을 검사하는 데 권장되는 방법은 무엇입니까?

나는 나는 또한 양식이 결국 채우고 절약 할 수 있다는 objec에 나에게 가능한 방법을 기존의 부부가 나는 궁금했다

public static bool IsNameValid() 
public bool IsValid() 

<asp:TextBox ID="myTextBox" runat="server" /> 

asp.net 텍스트 상자를 가지고 사람들이 유효성 검사 컨트롤에 해당 항목을 연결하는 방법 (customValidator를 가정하고 있습니까?). JavaScript의 중복성을 피하기 위해 유효성 검사를 다시 작성하지 않는 것이 좋습니다.

답변

1

CustomValidator를 사용하고 EnableClientScript 속성을 false로 설정하면 유효성 검사를 위해 서버로 이동해야합니다. 그런 다음 사용자 지정 유효성 검사기의 ServerValidate 메서드에서 args.IsValid 속성을 위의 메서드 결과에 설정합니다.

유효성 검사기를 사용하면 양식의 "제출"방법으로 이동할 때 최종 유효성 검사기를 If Page.IsValid() 블록으로 감쌀 수 있으므로 모든 유효성 검사기가 다시 돌아올 수 있습니다 처리하기 전에 사실로.

+1

그래서 if 문에서 제출 클릭을 감싸 야합니까? 당신이 그렇게 할 필요가없는 어떤 방법이 있습니까? – ChrisHDog

+1

아니요. 페이지에 유효성 검사기가 있어도 유효한 것인지 아닌지에 관계없이 페이지 제출이 계속 발생합니다. 일반적으로 유효성 검사기는 특히 클라이언트 측 스크립트가 생성되는 경우 자체적으로 트리거하고 유효한지 여부에 따라 상태를 true 또는 false로 설정하기 만합니다. 검사기 데이터를 처리할지 여부는 사용자가 결정해야합니다. –

+0

감사합니다 딜리 - 오, 좋은 정보입니다 - 매우 도움이됩니다. – ChrisHDog

관련 문제