We can use JavaScript to get the radio button value using the querySelector method along with the value property.
document.querySelector('input[name="radio1"]:checked').value;
Where radio1 in the code above would be the name attribute that all of the radio buttons share.
Let’s see an example of this below.
Lets say we have the following HTML:
<div id="div1">
<p>Select your favorite mode of transportation:</p>
<input type="radio" id="bike" name="transport" value="Bike"><label for="bike">Bike</label><br>
<input type="radio" id="car" name="transport" value="Car"><label for="car">Car</label><br>
<input type="radio" id="bus" name="transport" value="Bus"><label for="bus">Bus</label><br>
<input type="radio" id="train" name="transport" value="Train" checked><label for="train">Train</label><br>
<input type="radio" id="boat" name="transport" value="Boat"><label for="boat">Boat</label><br>
<input type="radio" id="airplane" name="transport" value="Airplane"><label for="airplane">Airplane</label><br>
</div>
In this example, the radio button Train will be set to checked to start. We can use our code from above to get this value using JavaScript.
Here is the JavaScript code we will need:
var radioButtonValue = document.querySelector('input[name="transport"]:checked').value;
Try it out below by selecting a radio button and then clicking the button below to see what radio button is checked:
Code Output:
Select your favorite mode of transportation:
Full Code:
<div id="div1">
<p>Select your favorite mode of transportation:</p>
<input type="radio" id="bike" name="transport" value="Bike"> <label for="bike">Bike</label><br>
<input type="radio" id="car" name="transport" value="Car"> <label for="car">Car</label><br>
<input type="radio" id="bus" name="transport" value="Bus"> <label for="bus">Bus</label><br>
<input type="radio" id="train" name="transport" value="Train" checked> <label for="train">Train</label><br>
<input type="radio" id="boat" name="transport" value="Boat"> <label for="boat">Boat</label><br>
<input type="radio" id="airplane" name="transport" value="Airplane"> <label for="airplane">Airplane</label><br>
</div>
<div id="click-me" onclick="selectedRadio()">Check which radio button is selected with JavaScript</div>
<div id="results"></div>
</div>
<script>
function selectedRadio(){
var radioButtonValue = document.querySelector('input[name="transport"]:checked').value;
document.getElementById("results").textContent = radioButtonValue;
};
</script>
Using JavaScript to Set the Value of a Radio Button
We can also use JavaScript to set the value of a radio button. We simply need to change the checked property of the radio button to true. Here is how we can do this:
document.getElementById("airplane").checked = true;
Let’s see this result in a similar example to the one above.
Code Output:
Select your favorite mode of transportation:
Full Code:
<div id="div1">
<p>Select your favorite mode of transportation:</p>
<input type="radio" id="bike1" name="transport" value="Bike"> <label for="bike1">Bike</label><br>
<input type="radio" id="car1" name="transport" value="Car"> <label for="car1">Car</label><br>
<input type="radio" id="bus1" name="transport" value="Bus"> <label for="bus1">Bus</label><br>
<input type="radio" id="train1" name="transport" value="Train"> <label for="train1">Train</label><br>
<input type="radio" id="boat1" name="transport" value="Boat"> <label for="boat1">Boat</label><br>
<input type="radio" id="airplane1" name="transport" value="Airplane"> <label for="airplane1">Airplane</label><br>
</div>
<div id="click-me" onclick="setRadio()">Set the radio button Airplane to checked</div><br>
</div>
<script>
function setRadio(){
document.getElementById("airplane1").checked = true;
};
</script>
Hopefully this article has been useful to help you understand how to use JavaScript to get the radio button value.
Leave a Reply