다음을 통해 공유


텍스트 상자에 특정 문자만 허용(C#)

작성자: Christian Wenz

PDF 다운로드

ASP.NET 유효성 검사 컨트롤은 사용자 입력에서 특정 문자만 허용되도록 할 수 있습니다. 그러나 여전히 사용자가 잘못된 문자를 입력하고 양식을 제출하는 것을 막지는 못합니다.

개요

ASP.NET 유효성 검사 컨트롤은 사용자 입력에서 특정 문자만 허용되도록 할 수 있습니다. 그러나 여전히 사용자가 잘못된 문자를 입력하고 양식을 제출하는 것을 막지는 못합니다.

단계

ASP.NET AJAX 컨트롤 도구 키트에는 텍스트 상자를 확장하는 컨트롤이 포함되어 FilteredTextBox 있습니다. 활성화되면 특정 문자 집합만 필드에 입력할 수 있습니다.

이 작업을 수행하려면 먼저 ASP.NET AJAX ScriptManager 컨트롤 도구 키트에서 사용되는 JavaScript 라이브러리를 로드하는 ASP.NET AJAX가 필요합니다.

<asp:ScriptManager ID="asm" runat="server" />

그런 다음 텍스트 상자가 필요합니다.

Numbers only: <asp:TextBox ID="TextBox1" runat="server" />

마지막으로 컨트롤은 FilteredTextBoxExtender 사용자가 입력할 수 있는 문자를 제한하는 작업을 처리합니다. 먼저 특성을 컨트롤의 TextBoxID 설정합니다TargetControlID. 그런 다음, 사용 가능한 FilterType 값 중 하나를 선택합니다.

  • Custom 기본; 유효한 문자 목록을 제공해야 합니다.
  • LowercaseLetters 소문자만
  • Numbers 숫자만
  • UppercaseLetters 대문자만

Custom FilterType 사용하는 ValidChars 경우 속성을 설정하고 입력할 수 있는 문자 목록을 제공해야 합니다. 그런데 텍스트 상자에 텍스트를 붙여 넣으려고 하면 잘못된 문자가 모두 제거됩니다.

다음은 숫자만 허용하는 컨트롤에 FilteredTextBoxExtender 대한 태그입니다(에서도 가능 FilterType="Numbers"했을 수 있음).

<ajaxToolkit:FilteredTextBoxExtender ID="ftbe" runat="server"
 TargetControlID="TextBox1" ValidChars="1234567890" />

페이지를 실행하고 JavaScript를 사용하는 경우 문자를 입력해도 작동하지 않습니다. 그러나 페이지에 숫자가 표시됩니다. 그러나 보호 FilteredTextBox 가 제공하는 것은 방탄이 아닙니다. JavaScript를 사용하도록 설정한 경우 텍스트 상자에 데이터를 입력할 수 있으므로 추가 유효성 검사 수단(예: ASP)을 사용해야 합니다. NET의 유효성 검사 컨트롤.

숫자만 입력할 수 있습니다.

숫자만 입력할 수 있습니다(전체 크기 이미지를 보려면 클릭).