A radio button or option button is a graphical control element that allows the user to choose only one of a predefined set of mutually exclusive options. The singular property of a radio button makes it distinct from checkboxes, where the user can select and unselect any number of items.
Radio buttons are arranged in groups of two or more and displayed on screen as, for example, a list of circular holes that can contain white space (for unselected) or a dot (for selected). Each radio button is normally accompanied by a label describing the choice that the radio button represents. The choices are mutually exclusive; when the user selects a radio button, any previously selected radio button in the same group becomes deselected (making it so only one can be selected). Selecting a radio button is done by clicking the mouse on (or touching the screen over) the button, or the caption, or by using a keyboard shortcut.
It is possible that initially none of the radio buttons in a group are selected. This unselected state cannot be restored by interacting with the radio button widget, though it may be possible through other user interface elements. When used in an HTML form, if no button in a group is checked, then no name–value pair is passed when the form is submitted. For example, for a radio button group named Sex with the options Male and Female, the variable Sex would not be passed, even with a blank value.
Radio buttons were named after the physical buttons used on older radios to select preset stations – when one of the buttons was pressed, other buttons would pop out, leaving the pressed button the only button in the "pushed in" position.
<form> <input type="radio" name="season" value="winter" checked>Winter <input type="radio" name="season" value="spring">Spring <input type="radio" name="season" value="summer">Summer <input type="radio" name="season" value="autumn">Autumn </form>
A group of attributes is defined by name. In one group, only one radio button can be chosen.
Version 6 of the Unicode standard includes a character designated to represent a radio button (🔘) at code point 128,280 (U+1F518), found in the Miscellaneous Symbols and Pictographs section. Similar characters are the circled dot operator (⊙) (U+2299), fisheye (◉) (U+25C9), and bullseye (◎) (U+25CE).
- RFC1866: the HTML 2.0 specification, which defined radio buttons on the web.
- W3 HTML 4.01 Specification
- Usage of radio buttons in Sun's Java Programming Tutorial
- Nielsen, Jakob (September 27, 2004). "Checkboxes vs. Radio Buttons". Nielsen Norman Group (article). [Fremont, California]. Retrieved November 12, 2014.