logo

JavaScript kullanarak bir radyo düğmesini nasıl kontrol edebilirim?

Radyo düğmesi, formlarda kullanıcıdan girdi almak için kullanılan bir simgedir. Kullanıcıların radyo düğmeleri grubundan bir değer seçmesine olanak tanır. Radyo düğmeleri temel olarak aşağıdakiler için kullanılır: birden fazla arasından tek seçim Çoğunlukla GUI formlarında kullanılır.

İki veya daha fazla radyo düğmesi arasında yalnızca bir radyo düğmesini işaretleyebilir/kontrol edebilirsiniz. Bu bölümde, bir radyo düğmesinin nasıl kontrol edileceği konusunda size rehberlik edeceğiz. JavaScript programlama dili .

Bunun için öncelikle radyo içeren bir form tasarlıyoruz. düğmeler HTML kullanarak ve ardından radyo düğmesini kontrol etmek için JavaScript programlamayı kullanacağız. Ayrıca hangi radyo düğmesi değerinin seçildiğini de kontrol edeceğiz.

Radyo düğmesi oluşturma

Aşağıda bir grup radyo düğmesi oluşturmaya yönelik basit bir kod verilmiştir.

Kodu Kopyala

25 c'den k'ye

Favori sezonunuzu seçin:

Yaz
Kış
Yağmurlu
Sonbahar
Şimdi Test Edin

Bir radyo düğmesini kontrol edin

Radyo düğmesini kontrol etmek için özel bir kod yazmamıza gerek yok. Oluşturulduklarında veya HTML biçiminde belirtildiklerinde kontrol edilebilirler.

Ancak aşağıdaki bölümde göreceğimiz işaretli radyo düğmesinin değerini almak için JavaScript kodunu yazmamız gerekiyor:

Radyo düğmesinin seçilip seçilmediğini kontrol edin

İşaretli radyo düğmesini kontrol etmenin veya hangi radyo düğmesinin seçildiğini tanımlamanın JavaScript'te iki yolu vardır. JavaScript bunun için iki DOM yöntemi sunar.

    getElementById sorguSeçici

Giriş radyosunun işaretli özelliği, onay kutusunun seçilip seçilmediğini kontrol etmek için kullanılır. Kullanmak document.getElementById('id').checked bunun için yöntem. Radyo düğmesinin kontrol edilen durumunu bir Boolean değeri olarak döndürecektir. Doğru ya da yanlış olabilir.

Doğru - Radyo düğmesi seçilirse.

YANLIŞ - Radyo düğmesi seçilmediyse/işaretlenmediyse.

Nasıl çalıştığını öğrenmek için aşağıdaki JavaScript koduna bakın:

Örnek

Örneğin, Summer adında bir radyo düğmemiz var ve id = 'yaz'. Şimdi bu düğme kimliğini kullanarak radyo düğmesinin işaretlenip işaretlenmediğini kontrol edeceğiz.

Kodu Kopyala

 if(document.getElementById('summer').checked == true) { document.write('Summer radio button is selected'); } else { document.write('Summer radio button is not selected'); } 

sorguSelektör()

querySelector() işlevi, JavaScript'in bir DOM yöntemidir. İçerisindeki radyo düğmelerinin ortak ad özelliğini kullanır. Bu yöntem, hangi radyo düğmesinin seçildiğini kontrol etmek için aşağıda verildiği gibi kullanılır.

 document.querySelector('input[name='JTP']:checked') 

Örnek

Örneğin, tüm düğmeler için name = 'season' name özelliğine sahip bir grup radyo düğmemiz var. Şimdi sezon isimli bu butonlar arasından hangisinin seçildiğini kontrol edeceğiz.

Kodu Kopyala

 var getSelectedValue = document.querySelector( 'input[name='season']:checked'); if(getSelectedValue != null) { document.write('Radio button is selected'); } else { document.write('Nothing has been selected'); } 

İşaretlenen radyo düğmesinin değerini alın:

getElementById()'ı kullanma

getElementById() yöntemini kullanarak işaretlenen radyo düğmesinin değerini almak için kullanılan kod aşağıdadır:

Kodu Kopyala

 if(document.getElementById('summer').checked) { var selectedValue = document.getElementById('summer').value; alert('Selected Radio Button is: ' + selectedValue); } 

querySelector()'ı kullanma

querySelector() yöntemini kullanarak işaretlenen radyo düğmesinin değerini almak için kullanılan kod aşağıdadır:

Kodu Kopyala

 var getSelectedValue = document.querySelector( 'input[name='season']:checked'); if(getSelectedValue != null) { alert('Selected radio button values is: ' + getSelectedValue.value); } 

Seçilen radyo düğmesi değerini almak için tam kod

Bu örnekte, bir radyo düğmesi oluşturmak ve kontrol etmek için yukarıdaki kodun tümünü bir araya getireceğiz. Bundan sonra seçilen radyo düğmesinin değerini de getireceğiz.

Kodu Kopyala

 <br> <b> Choose your favroite season: </b> <br> Summer <br> Winter <br> Rainy <br> Autumn <br> <br> Submit <h3 id="disp" style="color:green"> </h3> <h4 id="error" style="color:red"> </h4> function checkButton() { if(document.getElementById(&apos;summer&apos;).checked) { document.getElementById(&apos;disp&apos;).innerHTML = document.getElementById(&apos;summer&apos;).value + &apos; radio button is checked&apos;; } else if(document.getElementById(&apos;winter&apos;).checked) { document.getElementById(&apos;disp&apos;).innerHTML = document.getElementById(&apos;winter&apos;).value + &apos; radio button is checked&apos;; } else if(document.getElementById(&apos;rainy&apos;).checked) { document.getElementById(&apos;disp&apos;).innerHTML = document.getElementById(&apos;rainy&apos;).value + &apos; radio button is checked&apos;; } else if(document.getElementById(&apos;autumn&apos;).checked) { document.getElementById(&apos;disp&apos;).innerHTML = document.getElementById(&apos;autumn&apos;).value + &apos; radio button is checked&apos;; } else { document.getElementById(&apos;error&apos;).innerHTML = &apos;You have not selected any season&apos;; } } 
Şimdi Test Edin

Çıktı

Yukarıdaki kodu çalıştırdığınızda web üzerinde çalışacak ve aşağıdaki gibi çıktı verecektir:

JavaScript kullanarak bir radyo düğmesi nasıl kontrol edilir

Radyo düğmelerinden birini seçin ve Göndermek düğmesine basın ve seçilen değeri alın.

java dizesi ekle
JavaScript kullanarak bir radyo düğmesi nasıl kontrol edilir

Mevsimlerden herhangi birini seçmemeniz ve doğrudan Göndermek düğmesine bastığınızda size bir hata mesajı gösterecektir: Herhangi bir sezon seçmediniz çünkü doğrulamayı kullandık.

JavaScript kullanarak bir radyo düğmesi nasıl kontrol edilir

Seçilen radyo düğmesinin değerini alın: querySelector()

DOM querySelector() yöntemi

querySelector() işlevi, JavaScript'in bir DOM yöntemidir. Bu yöntem belirtilenle eşleşen öğeyi elde etmek için kullanılır. CSS seçici belgede. HTML kodunda radyo düğmesinin name özelliğini belirtmeniz gerektiğini unutmayın.

Olarak kullanılır document.querySelector('input[name='JTP']:checked') içinde Radyo düğmeleri grubundan seçilen radyo düğmesi değerini kontrol etmek için sekme. Küçük bir kod satırı kullanarak seçilen radyo düğmesinin değerini alarak kodun uzunluğunu en aza indirir.

 var selectedValue = document.querySelector(&apos;input[name=&apos;JTP&apos;]:checked&apos;) 

Aşağıdaki koda HTML formuyla nasıl kullanılacağına bakın:

Kodu Kopyala

 <br> <b> Choose your favroite season: </b> <br> Summer <br> Winter <br> Rainy <br> Autumn <br> <br> Submit <h3 id="disp" style="color:green"> </h3> <h4 id="error" style="color:red"> </h4> function checkButton() { var getSelectedValue = document.querySelector( &apos;input[name=&apos;season&apos;]:checked&apos;); if(getSelectedValue != null) { document.getElementById(&apos;disp&apos;).innerHTML = getSelectedValue.value + &apos; season is selected&apos;; } else { document.getElementById(&apos;error&apos;).innerHTML = &apos;*You have not selected any season&apos;; } } 
Şimdi Test Edin

Çıktı

Yukarıdaki kodu çalıştırdığınızda size aşağıdaki gibi web çıktısını gösterecektir. Buradan favori mevsiminizi seçin.

JavaScript kullanarak bir radyo düğmesi nasıl kontrol edilir

Verilen radyo düğmesi arasında bir değer seçtiğinizde ve Göndermek düğmesine bastığınızda, seçilen değeri web'de alacaksınız.

Java dize biçimi uzun
JavaScript kullanarak bir radyo düğmesi nasıl kontrol edilir

seçeneğine tıklamanız durumunda Göndermek Herhangi bir radyo düğmesini seçmeden düğmeyi tıkladığınızda size bir hata mesajı gösterilecektir: Herhangi bir sezon seçmediniz .

JavaScript kullanarak bir radyo düğmesi nasıl kontrol edilir

Yani burada her ikisini de görebilirsiniz getElementById('sezon').value Ve document.querySelector('input[name='JTP']:checked') aynı şekilde çalışın. Her ikisi de kontrol edilen radyo düğmesi değerini bulmak için kullanılır. Bunlardan herhangi birini kullanabilirsiniz.

getElementById ve querySelector karşılaştırması

DOM yöntemlerinin her ikisi de getElementByID() ve querySelector() neredeyse aynı şekilde çalışır. Ancak performans ve kod boyutu gibi bazı farklılıkları da vardır. Şimdi aralarındaki bazı farkları görelim:

Kodun uzunluğu

getElementById ile yazılan kod, querySelector'dan biraz daha uzundur. getElementById yöntemini kullanarak, her radyo düğmesinin hangisinin işaretlendiğini ayrı ayrı kontrol etmemiz gerekir.

Öte yandan, querySelector DOM yöntemini kullanırsanız, işaretlenmiş radyo düğmesini kontrol etmek ve değerini almak için tek bir kod satırı girmeniz yeterlidir. Dolayısıyla sonuç olarak querySelector'ın daha az kod gerektirmesidir.

Verim

Her iki işlev de iyi performans sağlar ancak hangisinin daha iyi olduğunu bilmeniz yeterlidir. getElementById yönteme göre çok daha hızlıdır. sorguSeçici yöntem. querySelector yöntemi de biraz karmaşıktır.

DOM yöntemleri tarafından kullanılan değer

getElementById yöntemi, işaretli düğmeyi kontrol ederken her zaman her radyo düğmesinin benzersiz kimliğini kullanır ve kimlikle eşleşen ilk öğeyi döndürür.

Oysa querySelector ortak bir ad (seçici) tüm radyo düğmelerinin işaretlenmiş radyo düğmesini almasını ve belirtilen seçiciyle eşleşen ilk öğeyi döndürmesini sağlar.