2013-04-30 1 views
0

모든 비 숫자 입력을 무시하는 텍스트 상자를 만들어야합니다. 나는이 사이트숫자와 백 스페이스 만 허용하도록 texbox를 제한하는 방법은 무엇입니까?

Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress 
      e.Handled = Not Char.IsDigit(e.Keychar) 
End Sub 

에서 발견 된이 코드를 사용하려하지만 내가 뭘 잘못 코드 System.Windows.Forms.KeyPressEventArgs

의이 부분에서 실수를?

+0

하는 데 도움이됩니다. ASP.NET에서는 텍스트 입력을 제한하거나 각 키 누르기에 대한 다시 게시 이벤트를 처리하기 위해 클라이언트 스크립팅을 사용해야합니다 (힌트 :이 작업을 수행하지 마십시오). – Dai

+0

이렇게하면 백 스페이스가 허용되지 않습니다. 사례에 대한 정규 표현식을 사용하십시오. – MahaSwetha

+0

및 ASP에서 어떻게 제한할까요? – meks

답변

0

동의합니다. ASP.net의 키 스트로크는 클라이언트 측에서 관리되어야합니다. 즉, 필요한 포스트 백을 피하기 위해 서버 오버로드를 피하십시오. 당신이 자바 스크립트에 익숙하지 않은 경우 당신이 정말로 '즉시'키를 관리하려면 당신은 사용자가 관리 할 수있는, 입력

http://www.w3schools.com/jsref/event_onchange.asp

의 onChangeEvent을 관리 할 수 ​​W3School에서이 excelleent 튜토리얼을 참조 할 수 있습니다 'onKeyDown에'이벤트 http://www.w3schools.com/jsref/event_onkeydown.asp

0

사용이 코드 숨김에서

if(Regex.IsMatch(yourStringToValidate,"^[a-zA-Z0-9\\\$]+$") 
{ 
    //Place your msg 
} 
else 
{ 
//Place your validation msg 
} 
0

MaskedTextBox를 사용하여 시도하고 솜 마스크를 설정 이런 일은 다음과 같습니다 :

maskedTextBox1.Mask = "\d*"; 
0

이 코드는 html의 머리 부분에 위치해야합니다.

내가

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> 

<script type="text/javascript"> 
     $(document).ready(function() { 
     $('#mytext').keydown(function(e) { 

       if (e.shiftKey) e.preventDefault(); 
       else { 
        var nKeyCode = e.keyCode; 
        //Ignore Backspace and Tab keys 
        if (nKeyCode == 8 || nKeyCode == 9) return; 
        if (nKeyCode < 95) { 
         if (nKeyCode < 48 || nKeyCode > 57) e.preventDefault(); 
        } else { 
         if (nKeyCode < 96 || nKeyCode > 105) e.preventDefault(); 
        } 
       } 

      }); 
     }); 

    </script> 

HTML 코드를 목적을

<input type="text" id="mytext"> 
1

희망을 검증하기 위해 jQuery 라이브러리를 사용한이 당신이 코드는, 윈폼에 대한 ASP.NET 아니다

Sub btnDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles MyBase.KeyPress 

    if e.KeyChar= Chr(8) 
     'do something for backspace 
    else if e.KeyChar=(CHr(13) 
     'do something for enter 
    end if 
    end sub 
관련 문제