How can I know which radio button is selected via jQuery?

Matthew C.

The Problem

You have a radio button group in a form. For example, two radio group buttons for selecting a language (English or French):

<form id="myForm"> <fieldset> <legend>Select a language</legend> <div> <input type="radio" id="english" name="language" value="English" checked /> <label for="english">English</label> </div> <div> <input type="radio" id="french" name="language" value="French" /> <label for="french">French</label> </div> </fieldset> </form>

How do you determine which radio button is selected using jQuery?

The Solution

You can use the jQuery selectors to find and select HTML elements by their attributes such as name, id, class, or type. The selectors all start with a dollar sign and parenthesis: $(). To get the value of the selected radio button you can use the following selectors and then get the value of the selected radio button using the val() method:

$("input[type='radio'][name=language]:checked", '#myForm').val();

The attribute equals selector ([name="value"]) is used to select elements with a type of “radio” and a name equal to “language”. The :checked selector matches all checked elements. The second argument of the jQuery selector is “#myForm”. The selectors only check for elements in the form with an id of “myForm”.

You could add a button to check which radio button is selected:

<button id="checkRadioBtn">Check radio selection</button>

You can then add the following lines of code to check which radio button is selected by clicking the button:

import $ from 'jquery'; const checkRadioBtn = $('#checkRadioBtn'); => { const selectedRadioBtn = $( "input[type='radio'][name=language]:checked", '#myForm' ).val(); console.log(selectedRadioBtn); });

You can also check which radio button is selected using vanilla JavaScript:

const checkRadioBtn = document.getElementById('checkRadioBtn'); checkRadioBtn.addEventListener('click', () => { const myForm = document.getElementById('myForm'); const selectedRadioBtn = myForm.querySelector( "input[type='radio'][name=language]:checked" ).value; console.log(selectedRadioBtn); });

You can use the methods of the Document Web API such as getElementById and querySelector to select DOM elements and then get the value of the checked radio button from its value attribute.

Join the discussionCome work with us
Share on Twitter
Bookmark this page
Ask a questionImprove this Answer

Related Answers

A better experience for your users. An easier life for your developers.

© 2023 • Sentry is a registered Trademark
of Functional Software, Inc.