Bir Metin Kutusunda Yalnızca Belirli Karakterlere İzin Verme (C#)
Christian Wenz tarafından
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 TargetControlID
ID
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 gerekirLowercaseLetters
Yalnızca küçük harflerNumbers
yalnızca rakamlarUppercaseLetters
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 rakamlar girilebilir (Tam boyutlu resmi görüntülemek için tıklayın)