Skip to main content

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>

 

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir