AJAX
AJAX MaskedEdit ve MaskedEditValidator Extender
Merhaba arkadaşlar bu makalemde AJAX Control Toolkit nesnelerinden MaskedEdit ve MaskedEditValidator Extender nesnelerini inceleyeceğiz.
15 Şubat 2007
3 dk okuma
72
1
Merhaba arkadaşlar bu makalemde AJAX Control Toolkit nesnelerinden MaskedEdit ve MaskedEditValidator Extender nesnelerini inceleyeceğiz.
MaskedEdit:
MaskedEdit kontrolü textbox üzerinde giris denetimleri saglayan bir ajax nesnesidir. Bu nesne textboxlara uygulandıgında seçilen veri tipine baglı olarak kullanıcının girecegi deger maskelenir. Girilen verilerin dogrulanması için MaskedEditValidator nesnesini kullanırız.
Bu nesneyi nerelerde kullanabiliriz? Bana kalırsa hemen hemen her yerde. Tarih girislerinde, para birimi girislerinde, sadece yazı yada sadece numeric degerleri girmek istedigimiz her yerde bu nesneyi kullanabiliriz.
Kullanımı:
9 - Sadece numeric deger
L - Harf
$ - Harf yada bosluk
C - Custom karakter(büyük küçük harf duyarlı)
A - Custom karakter yada harf
N - Custom karakter yada numeric deger
? - herhangi bir karakter
/ - Tarih Ayıracı
: - Zaman ayıracı
. - Ondalok ayıracı
, - Binlik ayıracı
None - Valdiation yok
Number - Numeric validation
Date - Tarih validation
Time - Zaman validation
MaskedEditValidator:
Maskelenen textboxdaki verilerin dogrulugunu kontrol etmek için kullanılan kontroldür.
Kullanımı:
Özellikleri:
Örnek:
Örnegimizde tarih alanına veri girerek istedigimiz kritere uygun olup olmadıgını kontrol edip verilerin dogrulanmasını, eger girilen veri yanlısssa kullanıcının bilgilendirilmesini saglayacagız.
Örnegimize geçelim ve yeni bir Ajax Projesi açalım. Sayfamıza script manager, textbox, MaskedEditExtender, MaskedEditValidationExtender koyalım.

Simdi maskleme ve validation için gerekli kodları yazalım. Bunun için HTML kod kısmına geçelim.
Maskeleme islemi

Validation islemi

Projemizi çalıstıralım; ve Geçersiz bir tarih girelim

Simdi belirtilen tarihten büyük bir tarih girelim;

Simdi belirtilen tarihten küçük bir tarih girelim;

Evet gerçekten çok kullanıslı 2 kontrol. Ufak tefek bugları var ama zamanla düzeleceginden hiç kuskum yok :)
Bu makalenin de sonuna geldik, baska bir makalede görüsmek üzere basarı ve iyi günler dilerim.
Sem GÖKSU
MCP | MCAD.NET | MCTS
Örnek Kodlar için mail adresimi kullanabilirsiniz
askisem@hotmail.com
Kaynaklar
http://ajax.asp.net
MaskedEdit kontrolü textbox üzerinde giris denetimleri saglayan bir ajax nesnesidir. Bu nesne textboxlara uygulandıgında seçilen veri tipine baglı olarak kullanıcının girecegi deger maskelenir. Girilen verilerin dogrulanması için MaskedEditValidator nesnesini kullanırız.
Bu nesneyi nerelerde kullanabiliriz? Bana kalırsa hemen hemen her yerde. Tarih girislerinde, para birimi girislerinde, sadece yazı yada sadece numeric degerleri girmek istedigimiz her yerde bu nesneyi kullanabiliriz.
Kullanımı:
<ajaxToolkit:MaskedEditExtender
TargetControlID="TextBox2"
Mask="99,999.99"
MessageValidatorTip="true"
OnFocusCssClass="MaskedEditFocus"
OnInvalidCssClass="MaskedEditError"
MaskType="Number"
InputDirection="RightToLeft"
AcceptNegative="Left"
DisplayMoney="Left"/>Maskeleme Karakterleri
L - Harf
$ - Harf yada bosluk
C - Custom karakter(büyük küçük harf duyarlı)
A - Custom karakter yada harf
N - Custom karakter yada numeric deger
? - herhangi bir karakter
Maskeleme Araçları
: - Zaman ayıracı
. - Ondalok ayıracı
, - Binlik ayıracı
DisplayMoney: Para biriminin nasıl gösterilecegini belirler. (sol, sag, none) InputDirection: Veri girisinin baslangıç yönünü belirler. MaskType: Maskeleme tipini belirtir.
Number - Numeric validation
Date - Tarih validation
Time - Zaman validation
MessageValidatorTip: Textboxın içerigi degistiginde görüntülenecek mesaj.
MaskedEditValidator:
Maskelenen textboxdaki verilerin dogrulugunu kontrol etmek için kullanılan kontroldür.
Kullanımı:
<ajaxToolkit:MaskedEditValidator
ControlExtender="MaskedEditExtender2"
ControlToValidate="TextBox2"
IsValidEmpty="False"
MaximumValue="12000"
EmptyValueMessage="Number is required"
InvalidValueMessage="Number is invalid"
MaximumValueMessage="Number > 12.000"
MinimumValueMessage="Number < -100"
MinimumValue="-100" ValidationGroup="Demo1"
Display="Dynamic"
TooltipMessage="Input a number: -100 up to 12.000"/>
ControlToValidate - Kontrol edilecek olan textbox'ın ID'si ControlExtender - Maskeleme yapan Extenderin ID'si ClientValidationFunction - Custom validator içim kullanolan fonksiyon InitialValue - Validation'un baslangıç degeri. Varsayılanı bostur IsValidEmpty - Textbox bossa requiredfield validator'ı çalısır. MaximumValue - Maskeleme için max. Deger. (CompareValidator çalısır) MinimumValue - Maskeleme için min. Deger. (CompareValidator çalısır) MessageEmpty - RequiredValidator çalıstıgında verillecek mesaj MaximumValueMessage - Max degerden büyük bir deger girildiginde verilecek mesaj. (CompareValidator çalısır) MinimumValueMessage - Min degerden büyük bir deger girildiginde verilecek mesaj. (CompareValidator çalısır) InvalidValueMessage - Geçersiz deger girildiginde görüntülenecek mesaj TooltipMessage - textbox üzerinde gelince yada bosken görüntülenecek olan tooltip degeri. ValidationExpression - Veriyi dogrulamak için kullanılan Regular expression.
Örnegimizde tarih alanına veri girerek istedigimiz kritere uygun olup olmadıgını kontrol edip verilerin dogrulanmasını, eger girilen veri yanlısssa kullanıcının bilgilendirilmesini saglayacagız.
Örnegimize geçelim ve yeni bir Ajax Projesi açalım. Sayfamıza script manager, textbox, MaskedEditExtender, MaskedEditValidationExtender koyalım.

Simdi maskleme ve validation için gerekli kodları yazalım. Bunun için HTML kod kısmına geçelim.
Maskeleme islemi
Validation islemi
Projemizi çalıstıralım; ve Geçersiz bir tarih girelim

Simdi belirtilen tarihten büyük bir tarih girelim;

Simdi belirtilen tarihten küçük bir tarih girelim;

Evet gerçekten çok kullanıslı 2 kontrol. Ufak tefek bugları var ama zamanla düzeleceginden hiç kuskum yok :)
Bu makalenin de sonuna geldik, baska bir makalede görüsmek üzere basarı ve iyi günler dilerim.
Sem GÖKSU
MCP | MCAD.NET | MCTS
Örnek Kodlar için mail adresimi kullanabilirsiniz
askisem@hotmail.com
Kaynaklar
http://ajax.asp.net
Yorumlar (1)
S
Serkan Eren
20 Nis 2009 04:52
Sem Göksu, gerçekten güzel bi makale ellerine sağlık.Yalnız Masktype olarak number, Mask'ada "99,999" olarak yaptıgınızda, sayıyı 99.999 olarak gösteriyor, aynı şekilde bu olayın simetriğide olmakta yani "99.999" bunuda "99,999" olarak gösteriyor. Büyüktür Küçüktür olayları tarih ve zaman işlemlerinde güzel çalışşada,sayısal değerlerde farklı kombinasyonlarında doğru randumanı alamadım.