CheckBoxList: Hepsini Seç/Hepsini Temizle

Microsoft Office OneNote; özellikle iş toplantılarındaki notları saklamak için harika bir uygulama. Toplantı notları dışında uzun zamandır uğraştığım projelerde karşıma çıkan problemleri-çözümleri, ipucu sayılabilecek durumları(tips/tricks diyelim) ve yine yabancı bloglarda gözüme çarpan faydalı olabilecek bazı bilgileri OneNote’da depoluyordum. Bugün baktım yazılacaklar listesi bir hayli birikmiş, o zaman fırsat buldukça bu bilgileri insanlarla paylaşma zamanı gelmiş dedim :)

Buyurun ilk yazıya; aslında pek ASP.NET’lik bir durum yok ama yine de ASP.NET programcılarının işine yarayacak bir kod parçası. Senaryo şu; CheckBoxList ile listelediğimiz birçok kayıt var ve tek hamlede tüm kayıtlar seçilebilsin ya da seçilenler temizlensin istiyoruz. Basit bir JavaScript fonksiyonu ile bu işi rahatlıkla yapabiliriz. Aşağıda JavaScript fonksiyonunu bulabilirsiniz.

<script language="javascript" type="text/javascript">

    function ListeSecim(kontrol, durum) {

        var ctl = document.getElementById(kontrol);

        var inputs = ctl.getElementsByTagName('input'); //CheckBoxList'teki input elementlerini getir

        //CheckBoxList'teki tüm input elementlerinin checked niteliğini

        //durum değişkenindeki değere ata(true/false)

        for (var i = 0; i < inputs.length; i++)

            inputs[i].checked = durum;

    }

</script>

Tabi bir de tüm item’ları seçme ve temizleme işini yapacak linklere ihtiyacımız var. Bu linklerden yukarıdaki fonksiyonu çağıracağız. İki link arasındaki tek farklılık ListeSecim fonksiyonuna gönderilecek ikinci parametrenin değeri olacaktır.

<a href="javascript:ListeSecim('CheckBoxList1', true)">Hepsini Seç</a>&nbsp;

<a href="javascript:ListeSecim('CheckBoxList1', false)">Hepsini Temizle</a>

 

5 Mayıs 2009 Salı 23:23

Yorum - RSSYorumlar (0)

Etiket: ,
Kategori: ASP.NET

facebook'da Paylaş   twitter'da Paylaş   friendfeed'de Paylaş   del.icio.us'da Paylaş   stumpleupon'da Paylaş   Permalink

Bağlantılar



Takip Et

RSS Feed twitter friendfeed

Seminer/Webiner Programım

  • Seminer-WebinerASP.NET 4.0 WebForms Yenilikleri (Microsoft İstanbul Ofisi)
    29 Mayıs 2010

  • Seminer-WebinerVisual Studio 2010 Yenilikleri (Osmangazi Üniversitesi)
    15 Mayıs 2010

  • Seminer-WebinerASP.NET AJAX ile Zengin Internet Uygulamaları Geliştirme (Microsoft İstanbul Ofisi)
    3 Mayıs 2010

>> Etkinlik Takvimi