Merhaba arkadaşlar. kısa olmasına karşın çok pratik bir kod paylaşacağım.
Bu kodda asp.net kontrollerini dinamik oluşturacağız. ama sırf bunu anlatmak için açmadım konuyu. birde
ajax ile de kullanabileceÄŸiniz kullanabileceÄŸiniz dinamik event handler atama iÅŸlemine deÄŸineceÄŸim.
Sayfamıza bir placeholder ekleyelim ve pageload'a gelelim
|
|
kodumuz yukarıda biraz açıklayacak olursak. for döngümüz içinde buton sınıfından bir nesne
oluşturuyoruz. bu nesnenin click özelliğine kendi yazdığımız tıkla fonksiyonunu atıyoruz. id'sini ve
text'ini fordaki i değişkenimizle, sıralı oalcak şekilde atıyoruz (tus1,tus2..) evet butonumuz oluştu.
şimdi bunu sayfamızda görebilmek için placeholder nesnemize atalım.
2. bölümde aynı işlemleri literal için yapıyoruz. alt satıra atmak için literal textine
br atıyoruz.hiç dinamik kontrol kullanmayanlara örnek olması için. bir de literal oluşturdum.
Şimdi fonksiyonumuza geçelim. bu fonksiyon yukarıda butonlara atadığımız kendi yazacağımız fonksiyon.
static butonlarda butona çift tıklayınca çıkan onclick fonksiyonundan pek farklı değil.
|
|
kısaca açıklayacak olursak.normal click fonksiyonundan farklı olarak biz bu fonksiyonu for döngüsü
içinde 10 tane butona atatık. ve hangi butona tıklandığına ilişkin bir kod yazacağız fonksiyona.
sender objnesnesizim butonumuzu temsil ediyor bu zaten static fonksiyonlarda da var. ama bunu yine
System.Web.UI.WebControls sınıfından butona çevirmeden direkt kullanamıyoruz.(fonksiyon içindeki ilk kod
bunu yapıyor) dugme nesnesine atadık.
2. kodda null olmadığından emin olalım her ihtimale karşı önlemimizi alalım. evet artık hangi butona
tıklandığını bulmuş olduk. bu butonun text'ini yazdıyoruz. buton id'sindeki tus kelimesini replace
ederek de numarasını buluyoruz.
bu numara bulma işlemi eğer for değilde bir db'den çekilen kayıtla oluşturulmuş nesnelerde (veri
tabanındaki kayıt id'si atanmışsa) direkt bize id'yi verir. evet kısa da olsa ajaxla uğraştığım
zamanlarda geliştirdiğim bana çok kolaylık sağlamış bir koddur.
Ajaxla uğraşanlar bilirler request işlemlerini kullanmak istediğimizde başımız belaya girer :) her
sayfaya query string de gönderemeyiz. çünkü yenilenmemesi gerekir.yada link olması gerekir.
işte bu gibi durumlarda bu kod kurtarıcınız olacakatır.
id göndermeden işlem yapmak isterseniz. yine server ve asp.net tabanlı güzel bir çözümdür.
aynı zamanda birden çok butonu tek fonksiyondan kontrol etmek isterseniz yine buradan
faydalanabilirsiniz.
önceki yazı PHP ile mail göndermek |
sonraki yazı popup pencereden ana pencereye veri gönderme |
pillinetwork sitelerine yorum ekleyebilmek ve daha fazlası için, üye olun ya da giriş yapın.
Nokta ve pilli ortak yapımı olan kodaman.org kolektif bir kod yazarları blogudur. Siz de katılabilirsiniz.