나는 시도한이 문제를 해결하기 위해 많은 시간을 허비했지만, 성공하지 못했습니다. 내가 필요로하는 모든 텍스트 상자의 유효성을 검사하는 것입니다Keypress ISSUE VB.NET
유효한 체인 :
10%
0%
1111111.12%
15.2%
10
2.3
잘못된 체인 :
.%
12.%
.02%
%
123456789123.123
나는 키 누르기 이벤트 지원이 유효 체인 텍스트 상자를 확인해야합니다.
나는 tryed :Private Sub prices_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles wholeprice_input_new_item.KeyPress, dozenprice_input_new_item.KeyPress, _
detailprice_input_new_item.KeyPress, costprice_input_new_item.KeyPress
Dim TxtB As TextBox = CType(sender, TextBox)
Dim fullText As String = TxtB.Text & e.KeyChar
Dim rex As Regex = New Regex("^[0-9]{1,9}([\.][0-9]{1,2})?[\%]?$ ")
If (Char.IsDigit(e.KeyChar) Or e.KeyChar.ToString() = "." Or e.KeyChar = CChar(ChrW(Keys.Back))) Then
If (fullText.Trim() <> "") Then
If (rex.IsMatch(fullText) = False And e.KeyChar <> CChar(ChrW(Keys.Back))) Then
e.Handled = True
MessageBox.Show("You are Not Allowed To Enter More then 2 Decimal!!")
End If
End If
Else
e.Handled = True
End If
End Sub
참고 : 정규식은 옵션 퍼센트 기호 (최대 2 진수 장소 및 9 정수)를 확인해야한다.
나는 성공
오류가 발생했습니다. KeyPress에서 유효성을 검사하고 모든 것을 게시하는 것이 나에게 이상합니다. Javascript'onkeyup'을 사용하여 유효성을 검사 한 다음 서버 측에서 유효성 검사를하지 않는 것이 좋습니다 ** ** 다중 포스트 백과 반대되는 전체 문자열 만 확인 하시겠습니까? –