Create buttongroup with icons in EJ2 TypeScript Button group control

10 May 20233 minutes to read

To create ButtonGroup with icons, span element should be added inside each button element with e-btn-icon and e-icon-left along with icon classes.

The following example illustrates how to create ButtonGroup with icons.

<!DOCTYPE html>
<html lang="en">

<head>
    <title>EJ2 Button-Group</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/28.1.33/ej2-base/styles/material.css" rel="stylesheet" />
    <link href="https://cdn.syncfusion.com/ej2/28.1.33/ej2-buttons/styles/material.css" rel="stylesheet" />
    <link href="https://cdn.syncfusion.com/ej2/28.1.33/ej2-popups/styles/material.css" rel="stylesheet" />
    <link href="https://cdn.syncfusion.com/ej2/28.1.33/ej2-splitbuttons/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'>
        <div id='buttongroup' class='e-btn-group'>
            <button class="e-btn">
                <span class="e-btn-icon e-icon-left e-icons e-left-icon"></span>Left
            </button>
            <button class="e-btn">
                <span class="e-btn-icon e-icon-left e-icons e-middle-icon"></span>Center
            </button>
            <button class="e-btn">
                <span class="e-btn-icon e-icon-left e-icons e-right-icon"></span>Right
            </button>
        </div>
    </div>
</body>

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

#loader {
  color: #008cff;
  height: 40px;
  left: 45%;
  position: absolute;
  top: 45%;
  width: 30%;
}
.e-btn-group {
  margin: 25px 5px 20px 20px;
}

.e-left-icon::before {
    content: '\e33a';
}

.e-right-icon::before {
    content: '\e34d';
}

.e-middle-icon::before {
    content: '\e35e';
}