# ej2-react-splitbuttons

A package of Syncfusion<sup>®</sup> React UI Components (Essential JS 2) DropDownButton, SplitButton, ProgressButton and ButtonGroup.

![SplitButton](https://ej2.syncfusion.com/products/images/splitbutton/readme.gif)

> This is a commercial product and requires a paid license for possession or use. Syncfusion<sup>®</sup> licensed software, including this component, is subject to the terms and conditions of Syncfusion<sup>®</sup> [EULA](https://www.syncfusion.com/eula/es/). To acquire a license, you can [purchase](https://www.syncfusion.com/sales/products) or [start a free 30-day trial](https://www.syncfusion.com/account/manage-trials/start-trials).

> A [free community license](https://www.syncfusion.com/products/communitylicense) is also available for companies and individuals whose organizations have less than $1 million USD in annual gross revenue and five or fewer developers.

## Setup

To install `SplitButtons` and its dependent packages, use the following command

```sh
npm install @syncfusion/ej2-react-splitbuttons
```

## Components included

Following list of components are available in the package.

* DropDownButton - `DropDownButton` is used to toggle contextual overlays for displaying list of action items.
    * [Getting Started](https://ej2.syncfusion.com/react/documentation/drop-down-button/getting-started?utm_source=npm&utm_campaign=drop-down-button)
    * [View Online Demos](https://ej2.syncfusion.com/react/demos/?utm_source=npm&utm_campaign=drop-down-button#/fluent2/button/dropdown-button)
    * [Product Page](https://www.syncfusion.com/react-ui-components/dropdown-menu)

* SplitButton - `SplitButton` has primary and secondary button. Primary button is used to select default action and secondary button is used to toggle contextual overlays for displaying list of action items.
    * [Getting Started](https://ej2.syncfusion.com/react/documentation/split-button/getting-started?utm_source=npm&utm_campaign=split-button)
    * [View Online Demos](https://ej2.syncfusion.com/react/demos/?utm_source=npm&utm_campaign=split-button#/fluent2/button/split-button)
    * [Product Page](https://www.syncfusion.com/react-ui-components/split-button)

* ProgressButton - `ProgressButton` visualizes the progression of an operation to indicate the user that a process is happening in the background with visual representation.
    * [Getting Started](https://ej2.syncfusion.com/react/documentation/progress-button/getting-started?utm_source=npm&utm_campaign=progress-button)
    * [View Online Demos](https://ej2.syncfusion.com/react/demos/?utm_source=npm&utm_campaign=progress-button#/fluent2/button/progress-button)
    * [Product Page](https://www.syncfusion.com/react-ui-components/progress-button)

* ButtonGroup - `ButtonGroup` is a graphical user interface that groups series of buttons horizontally or vertically.
    * [Getting Started](https://ej2.syncfusion.com/react/documentation/button-group/getting-started?utm_source=npm&utm_campaign=button-group)
    * [View Online Demos](https://ej2.syncfusion.com/react/demos/?utm_source=npm&utm_campaign=button-group#/fluent2/button/button-group)
    * [Product Page](https://www.syncfusion.com/react-ui-components/button-group)

## Supported Frameworks

These components are available in following list of frameworks.

| [<img src="https://ej2.syncfusion.com/github/images/js.svg" height="50" />](https://www.syncfusion.com/javascript-ui-controls?utm_medium=listing&utm_source=github)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[JavaScript](https://www.syncfusion.com/javascript-ui-controls?utm_medium=listing&utm_source=github)&nbsp;&nbsp;&nbsp;&nbsp; | [<img src="https://ej2.syncfusion.com/github/images/angular-new.svg"  height="50" />](https://www.syncfusion.com/angular-components/?utm_medium=listing&utm_source=github)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[Angular](https://www.syncfusion.com/angular-components/?utm_medium=listing&utm_source=github)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | [<img src="https://ej2.syncfusion.com/github/images/vue.svg" height="50" />](https://www.syncfusion.com/vue-components?utm_medium=listing&utm_source=github)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[Vue](https://www.syncfusion.com/vue-components?utm_medium=listing&utm_source=github)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | [<img src="https://ej2.syncfusion.com/github/images/netcore.svg" height="50" />](https://www.syncfusion.com/aspnet-core-ui-controls?utm_medium=listing&utm_source=github)<br/>&nbsp;&nbsp;[ASP.NET&nbsp;Core](https://www.syncfusion.com/aspnet-core-ui-controls?utm_medium=listing&utm_source=github)&nbsp;&nbsp; | [<img src="https://ej2.syncfusion.com/github/images/netmvc.svg" height="50" />](https://www.syncfusion.com/aspnet-mvc-ui-controls?utm_medium=listing&utm_source=github)<br/>&nbsp;&nbsp;[ASP.NET&nbsp;MVC](https://www.syncfusion.com/aspnet-mvc-ui-controls?utm_medium=listing&utm_source=github)&nbsp;&nbsp; | 
| :-----: | :-----: | :-----: | :-----: | :-----: |

## Key Features

### DropDownButton

* [**Icons and Navigations**](https://ej2.syncfusion.com/react/documentation/drop-down-button/popup-items#icons) - Supports text and icon on the DropDownButton and Popup items. URL can be given to Popup items  that creates the anchor link to navigate to the URL provided.

* [**Separator**](https://ej2.syncfusion.com/react/documentation/drop-down-button/popup-items#separator) - Supports Popup items grouping by using the Separator.

* [**Accessibility**](https://ej2.syncfusion.com/react/documentation/drop-down-button/accessibility#accessibility) - Provided with built-in accessibility support that helps to access all the DropDownButton component features through the keyboard, screen readers, or other assistive technology devices.

### SplitButton

* [**Icons and Navigations**](https://ej2.syncfusion.com/react/documentation/split-button/icons-and-separator#splitbutton-icons) - Supports text and icon on the SplitButton and Popup items. URL can be given to Popup items  that creates the anchor link to navigate to the URL provided.

* [**Separator**](https://ej2.syncfusion.com/react/documentation/split-button/icons-and-separator#separator) - Supports Popup items grouping by using the Separator.

* [**Accessibility**](https://ej2.syncfusion.com/react/documentation/split-button/accessibility#accessibility) - Provided with built-in accessibility support that helps to access all the SplitButton component features through the keyboard, screen readers, or other assistive technology devices.

### ProgressButton

* **Types, Sizes, and Styles** - Provided with different types, sizes and predefined styles of progress button.

* [**Icons and Spinner**](https://ej2.syncfusion.com/react/documentation/progress-button/spinner-and-progress#spinner) - Supports icon, spinner and its positioning.

* [**Animation**](https://ej2.syncfusion.com/react/documentation/progress-button/spinner-and-progress#content-animation) - Provided with predefined animation and progress indicator.

* [**Events**](https://ej2.syncfusion.com/react/documentation/progress-button/spinner-and-progress#change-step-of-the-progressbutton) - Supports event triggering at specified interval.

* [**Accessibility**](https://ej2.syncfusion.com/react/documentation/progress-button/accessibility#accessibility) - Provided with built-in accessibility support that helps to access all the ProgressButton component features through the keyboard, screen readers, or other assistive technology devices.

### ButtonGroup

* [**Types, Sizes, and Styles**](https://ej2.syncfusion.com/react/documentation/button-group/types-and-styles#buttongroup-types) - Provided with different types, sizes and predefined styles of button.

* [**Selection**](https://ej2.syncfusion.com/react/documentation/button-group/selection-and-nesting#selection) - Supports single and multiple selection behaviors.

* [**Orientation**](https://ej2.syncfusion.com/react/documentation/button-group/getting-started#orientation) - Supports horizontal and vertical orientations.

* [**Nesting**](https://ej2.syncfusion.com/react/documentation/button-group/selection-and-nesting#nesting) - Supports nesting with drop-down and split button components.

* [**Accessibility**](https://ej2.syncfusion.com/react/documentation/button-group/accessibility#accessibility) - Built-in accessibility features to access all the button group using the keyboard, screen readers, or other assistive technology devices.

## Resources

* [AI Coding Assistant](https://ej2.syncfusion.com/react/documentation/ai-coding-assistants/overview)
* [Theme Studio](https://ej2.syncfusion.com/themestudio/)
* [What's New](https://www.syncfusion.com/products/whatsnew/react?utm_medium=listing&utm_source=github)
* [Road Map](https://www.syncfusion.com/products/roadmap/react)
* [E-Books](https://www.syncfusion.com/succinctly-free-ebooks?searchkey=react&type=all)

## Support

Product support is available for through following mediums.

* Creating incident in Syncfusion<sup>®</sup> [Direct-trac](https://www.syncfusion.com/support/directtrac/incidents?utm_source=npm&utm_campaign=split-button) support system or [Community forum](https://www.syncfusion.com/forums/react-js2?utm_source=npm&utm_campaign=split-button).
* New [GitHub issue](https://github.com/syncfusion/ej2-react-ui-components/issues/new).
* Ask your query in [Stack Overflow](https://stackoverflow.com/?utm_source=npm&utm_campaign=split-button) with tag `syncfusion`, `ej2`.

## License

Check the license detail [here](https://github.com/syncfusion/ej2-react-ui-components/blob/master/license?utm_source=npm&utm_campaign=split-button).

## Changelog

Check the changelog [here](https://github.com/syncfusion/ej2-react-ui-components/blob/master/components/splitbuttons/CHANGELOG.md?utm_source=npm&utm_campaign=split-button)

© Copyright 2026 Syncfusion<sup>®</sup> Inc. All Rights Reserved. The Syncfusion<sup>®</sup> Essential Studio<sup>®</sup> license and copyright applies to this distribution.