Bir Metin Kutusunda Yalnızca Belirli Karakterlere İzin Verme (C#)

Christian Wenz tarafından

PDF’yi İndir

ASP.NET doğrulama denetimleri, kullanıcı girişinde yalnızca belirli karakterlere izin verildiğinden emin olabilir. Ancak bu yine de kullanıcıların geçersiz karakterler yazmasını ve formu göndermeyi denemesini engellemez.

Genel Bakış

ASP.NET doğrulama denetimleri, kullanıcı girişinde yalnızca belirli karakterlere izin verildiğinden emin olabilir. Ancak bu yine de kullanıcıların geçersiz karakterler yazmasını ve formu göndermeyi denemesini engellemez.

Adımlar

ASP.NET AJAX Denetim Araç Seti, metin kutusunu genişleten denetimi içerir FilteredTextBox . Etkinleştirildikten sonra alana yalnızca belirli bir karakter kümesi girilebilir.

Bunun işe yarayabilmek için öncelikle AJAX Denetim Araç Seti tarafından da kullanılan JavaScript kitaplıklarını yükleyen ASP.NET AJAX'a ScriptManager her zamanki gibi ihtiyacımız ASP.NET:

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

Ardından bir metin kutusuna ihtiyacımız var:

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

Son olarak, FilteredTextBoxExtender denetim kullanıcının yazmasına izin verilen karakterleri kısıtlamayı üstlenir. İlk olarak, özniteliğini TargetControlIDID denetimin TextBox değerine ayarlayın. Ardından, kullanılabilir FilterType değerlerden birini seçin:

  • Custom Varsayılan; geçerli karakterlerin listesini sağlamanız gerekir
  • LowercaseLetters Yalnızca küçük harfler
  • Numbers yalnızca rakamlar
  • UppercaseLetters yalnızca büyük harfler

Custom FilterType kullanılırsa özelliği ValidChars ayarlanmalıdır ve yazılabilecek karakterlerin listesini sağlamalıdır. Bu arada: Metin kutusuna metin yapıştırmaya çalışırsanız, tüm geçersiz karakterler kaldırılır.

Denetimin yalnızca basamaklara izin veren işaretlemesi FilteredTextBoxExtender (ile FilterType="Numbers"de mümkün olabilecek bir şey) aşağıda verilmiştir:

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

Sayfayı çalıştırın ve JavaScript etkinse bir harf girmeyi deneyin; bu işlem çalışmaz; ancak basamaklar sayfada görünür. Ancak korumanın FilteredTextBox madde işaretine dayanıklı olmadığını unutmayın: JavaScript etkinse metin kutusuna herhangi bir veri girilebilir, bu nedenle ek doğrulama araçları kullanmanız gerekir, örneğin ASP. NET'in doğrulama denetimleri.

Yalnızca basamaklar girilebilir

Yalnızca rakamlar girilebilir (Tam boyutlu resmi görüntülemek için tıklayın)