Label and size in EJ2 TypeScript Radio button control

This section explains the different sizes and labels.

Label

RadioButton caption can be defined by using the label property. This reduces the manual addition of label for RadioButton. You can customize the label position before or after the RadioButton through the labelPosition property.

import { RadioButton } from '@syncfusion/ej2-buttons';
import { enableRipple } from '@syncfusion/ej2-base';

enableRipple(true);

//Label position - Left.
let radiobutton: RadioButton = new RadioButton({ label: 'Left Side Label', name: 'position', labelPosition: 'Before' });
radiobutton.appendTo('#radiobutton1');

//Label position - Right.
radiobutton = new RadioButton({ label: 'Right Side Label', name: 'position', checked: true });
radiobutton.appendTo('#radiobutton2');
<!DOCTYPE html>
<html lang="en">

<head>
    <title>EJ2 RadioButton</title>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta name="description" content="Typescript UI Controls" />
    <meta name="author" content="Syncfusion" />
    <link href="https://cdn.syncfusion.com/ej2/25.1.35/ej2-base/styles/material.css" rel="stylesheet" />
    <link href="https://cdn.syncfusion.com/ej2/25.1.35/ej2-buttons/styles/material.css" rel="stylesheet" />
    <link href="styles.css" rel="stylesheet" />
    <script src="https://cdnjs.cloudflare.com/ajax/libs/systemjs/0.19.38/system.js"></script>
    <script src="systemjs.config.js"></script>
<script src="https://cdn.syncfusion.com/ej2/syncfusion-helper.js" type ="text/javascript"></script>
</head>

<body>
    <div id='loader'>LOADING....</div>
    <div id='container'>
        <ul>
            <li><input type="radio" id="radiobutton1" /></li>
            <li><input type="radio" id="radiobutton2" /></li>
        </ul>
    </div>
</body>

</html>
#container {
    visibility: hidden;
}

#loader {
  color: #008cff;
  height: 40px;
  width: 30%;
  position: absolute;
  top: 45%;
  left: 45%;
}

.e-radio-wrapper {
  margin-top: 18px;
}

li {
  list-style: none;
}

Size

The different RadioButton sizes available are default and small. To reduce the size of the default RadioButton to small, set the cssClass property to e-small.

import { RadioButton } from '@syncfusion/ej2-buttons';
import { enableRipple } from '@syncfusion/ej2-base';

enableRipple(true);

//Small RadioButton.
let radiobutton: RadioButton = new RadioButton({ label: 'Small', name: 'size', checked: true, cssClass: 'e-small' });
radiobutton.appendTo('#radiobutton1');

//Default RadioButton.
radiobutton = new RadioButton({ label: 'Default', name: 'size' });
radiobutton.appendTo('#radiobutton2');
<!DOCTYPE html>
<html lang="en">

<head>
    <title>EJ2 RadioButton</title>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta name="description" content="Typescript UI Controls" />
    <meta name="author" content="Syncfusion" />
    <link href="https://cdn.syncfusion.com/ej2/25.1.35/ej2-base/styles/material.css" rel="stylesheet" />
    <link href="https://cdn.syncfusion.com/ej2/25.1.35/ej2-buttons/styles/material.css" rel="stylesheet" />
    <link href="styles.css" rel="stylesheet" />
    <script src="https://cdnjs.cloudflare.com/ajax/libs/systemjs/0.19.38/system.js"></script>
    <script src="systemjs.config.js"></script>
<script src="https://cdn.syncfusion.com/ej2/syncfusion-helper.js" type ="text/javascript"></script>
</head>

<body>
    <div id='loader'>LOADING....</div>
    <div id='container'>
        <ul>
            <li><input type="radio" id="radiobutton1" /></li>
            <li><input type="radio" id="radiobutton2" /></li>
        </ul>
    </div>
</body>

</html>
#container {
    visibility: hidden;
}

#loader {
  color: #008cff;
  height: 40px;
  width: 30%;
  position: absolute;
  top: 45%;
  left: 45%;
}

.e-radio-wrapper {
  margin-top: 18px;
}

li {
  list-style: none;
}

See Also