@syncfusion/ej2-react-dropdowns
Version:
Essential JS 2 DropDown Components for React
215 lines (151 loc) • 20 kB
Markdown
# React DropDowns Components
Superset of HTML select box contains specific features such as data binding, grouping, sorting, filtering, and templates.
## What's Included in the React DropDown Package
The React DropDown package includes the following list of components.
### React DropDownList
The [React DropdownList](https://www.syncfusion.com/react-components/react-dropdown-list?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm) component is a quick replacement of the HTML select tags. It has a rich appearance and allows users to select a single value that is non-editable from a list of predefined values.
<p align="center">
<a href="https://ej2.syncfusion.com/react/documentation/drop-down-list/getting-started/?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm">Getting Started</a> .
<a href="https://ej2.syncfusion.com/react/demos/?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm#/bootstrap5/drop-down-list/default">Online demos</a> .
<a href="https://www.syncfusion.com/react-components/react-dropdown-list?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm">Learn more</a>
</p>
<p align="center">
<img alt="React DropDownList Component" src="https://raw.githubusercontent.com/SyncfusionExamples/nuget-img/master/react/react-dropdownlist.png">
</p>
#### Key features
* [Data binding](https://ej2.syncfusion.com/react/demos/#/material/drop-down-list/data-binding) - Binds and accesses the list of items from the local or server-side data source.
* [Grouping](https://ej2.syncfusion.com/react/demos/#/material/drop-down-list/grouping-icon) - Groups the logically related items under a single or specific category.
* [Sorting](https://ej2.syncfusion.com/react/documentation/api/drop-down-list#sortorder) - Sorts the list items in alphabetical order (either ascending or descending).
* [Filtering](https://ej2.syncfusion.com/react/demos/#/material/drop-down-list/filtering) - Filters the list items based on a character typed in the search box.
* [Templates](https://ej2.syncfusion.com/react/demos/#/material/drop-down-list/template) - Customizes the list items, selected value, header, footer, category group header, and no records content.
* [Accessibility](https://ej2.syncfusion.com/react/documentation/drop-down-list/accessibility) - Provided with built-in accessibility support used to access all the DropDownList component features using keyboard, screen readers, or other assistive technology devices.
### React DropDownTree
The [React DropDownTree](https://www.syncfusion.com/react-components/react-dropdown-tree?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm) component is a textbox control that allows the user to select single or multiple values from hierarchical data in a tree-like structure. It has several out-of-the-box features, such as data binding, check boxes, templates, UI customization, accessibility, and preselected values.
<p align="center">
<a href="https://ej2.syncfusion.com/react/documentation/drop-down-tree/getting-started?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm">Getting Started</a> .
<a href="https://ej2.syncfusion.com/react/demos/?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm#/bootstrap5/drop-down-tree/default">Online demos</a> .
<a href="https://www.syncfusion.com/react-components/react-dropdown-tree?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm">Learn more</a>
</p>
<p align="center">
<img alt="React DropDownTree Component" src="https://raw.githubusercontent.com/SyncfusionExamples/nuget-img/master/react/react-dropdowntree.png">
</p>
#### Key features
* [Data binding](https://ej2.syncfusion.com/react/demos/?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm#/bootstrap5/drop-down-tree/local-data) - Binds and accesses the list of items from the local or remote data source.
* [Checkbox](https://ej2.syncfusion.com/react/demos/?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm#/bootstrap5/drop-down-tree/checkbox) - Built-in support for checkboxes, allowing users to select single or multiple items.
* [Template](https://ej2.syncfusion.com/react/demos/?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm#/bootstrap5/drop-down-tree/template) - To change the appearance of the selection pop-up for tree items, plus the header and footer of the pop-up tree.
* [Filtering](https://ej2.syncfusion.com/react/demos/?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm#/bootstrap5/drop-down-tree/filtering) - Filters the list items based on a character typed in the search box.
### React Mention
The [React Mention](https://www.syncfusion.com/react-components/react-mention?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm) component is an autocomplete-like control to tag or select a user/group from the suggestion list. The control opens the suggestion list when a user starts typing with the character ‘@’ in popular social media sites such as Facebook, Twitter, and more. It supports several out-of-the-box features: Data binding, grouping, UI customization, accessibility, and more.
<p align="center">
<a href="https://ej2.syncfusion.com/react/documentation/mention/getting-started?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm">Getting Started</a> .
<a href="https://ej2.syncfusion.com/react/demos/?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm#/bootstrap5/mention/default">Online demos</a> .
<a href="https://www.syncfusion.com/react-components/react-mention?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm">Learn more</a>
</p>
<p align="center">
<img alt="React Mention Component" src="https://raw.githubusercontent.com/SyncfusionExamples/nuget-img/master/react/react-mention.png">
</p>
#### Key features
* [Sorting](https://ej2.syncfusion.com/react/documentation/mention/sorting) - Sorts the list items in alphabetical order (either ascending or descending).
* [Filtering](https://ej2.syncfusion.com/react/documentation/mention/filtering-data) - Filters the list items based on a character typed in the search box.
### React ComboBox
The [React ComboBox](https://www.syncfusion.com/react-components/react-combobox?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm) component is a drop-down list with editable textbox that also allows users to choose an option from a predefined pop-up list.
<p align="center">
<a href="https://ej2.syncfusion.com/react/documentation/combo-box/getting-started/?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm">Getting Started</a> .
<a href="https://ej2.syncfusion.com/react/demos/?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm#/bootstrap5/combo-box/default">Online demos</a> .
<a href="https://www.syncfusion.com/react-components/react-combobox?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm">Learn more</a>
</p>
<p align="center">
<img alt="React ComboBox Component" src="https://raw.githubusercontent.com/SyncfusionExamples/nuget-img/master/react/react-combobox.png">
</p>
#### Key features
* [Data binding](https://ej2.syncfusion.com/react/demos/#/material/combo-box/data-binding) - Binds and accesses the list of items from local or server-side data source.
* [Custom values](https://ej2.syncfusion.com/react/demos/#/material/combo-box/custom-value) - Sets user-defined values that is not in the pop-up list.
* [Grouping](https://ej2.syncfusion.com/react/demos/#/material/combo-box/grouping-icon) - Groups the logically related items under a single or specific category.
* [Sorting](https://ej2.syncfusion.com/react/documentation/api/combo-box#sortorder) - Sorts the list items in alphabetical order (either ascending or descending).
* [Filtering](https://ej2.syncfusion.com/react/demos/#/material/combo-box/filtering) - Filters the list items based on a character typed in the component.
* [Templates](https://ej2.syncfusion.com/react/demos/#/material/combo-box/template) - Customizes the list items, selected value, header, footer, category group header, and no records content.
* [Accessibility](https://ej2.syncfusion.com/react/documentation/combo-box/accessibility) - Provided with built-in accessibility support that helps to access all the ComboBox component features using the keyboard, screen readers, or other assistive technology devices.
### React AutoComplete
The [React AutoComplete](https://www.syncfusion.com/react-components/react-autocomplete?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm) component is a textbox control that provides a list of suggestions to select from as the user types. It has several out-of-the-box features such as data binding, filtering, grouping, UI customization, accessibility, and more.
<p align="center">
<a href="https://ej2.syncfusion.com/react/documentation/auto-complete/getting-started/?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm">Getting Started</a> .
<a href="https://ej2.syncfusion.com/react/demos/?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm#/bootstrap5/auto-complete/default">Online demos</a> .
<a href="https://www.syncfusion.com/react-components/react-autocomplete?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm">Learn more</a>
</p>
<p align="center">
<img alt="React AutoComplete Component" src="https://raw.githubusercontent.com/SyncfusionExamples/nuget-img/master/react/react-autocomplete.png">
</p>
#### Key features
* [Data binding](https://ej2.syncfusion.com/react/demos/#/material/auto-complete/data-binding) - Binds and accesses the list of items from local or server-side data source.
* [Grouping](https://ej2.syncfusion.com/react/demos/#/material/auto-complete/grouping-icon) - Groups the logically related items under a single or specific category.
* [Sorting](https://ej2.syncfusion.com/react/documentation/api/auto-complete#sortorder) - Sorts the list items in alphabetical order (either ascending or descending).
* [Highlight search](https://ej2.syncfusion.com/react/demos/#/material/auto-complete/highlight) - Highlights the typed text in the suggestion list.
* [Templates](https://ej2.syncfusion.com/react/demos/#/material/auto-complete/template) - Customizes the list item, header, footer, category group header, no records, and action failure content.
* [Accessibility](https://ej2.syncfusion.com/react/documentation/auto-complete/accessibility) - Provided with built-in accessibility support that helps to access all the AutoComplete component features using keyboard, on-screen readers, or other assistive technology devices.
### React MultiSelect
The [React MultiSelect Dropdown](https://www.syncfusion.com/react-components/react-multiselect-dropdown?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm) component is a quick replacement for the HTML select tag for selecting multiple values. HTML MultiSelect Dropdown is a textbox control that allows the user to type or select multiple values from a list of predefined options.
<p align="center">
<a href="https://ej2.syncfusion.com/react/documentation/multi-select/getting-started/?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm">Getting Started</a> .
<a href="https://ej2.syncfusion.com/react/demos/?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm#/bootstrap5/multi-select/default">Online demos</a> .
<a href="https://www.syncfusion.com/react-components/react-multiselect-dropdown?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm">Learn more</a>
</p>
<p align="center">
<img alt="React MultiSelect Component" src="https://raw.githubusercontent.com/SyncfusionExamples/nuget-img/master/react/react-multiselect.png">
</p>
#### Key features
* [Data binding](https://ej2.syncfusion.com/react/demos/#/material/multi-select/data-binding) - Binds and accesses the list of items from local or server-side data source.
* [Grouping](https://ej2.syncfusion.com/react/demos/#/material/multi-select/grouping) - Groups the logically related items under a single or specific category.
* [Templates](https://ej2.syncfusion.com/react/demos/#/material/multi-select/template) - Customizes the list items, selected value, header, footer, category group header, and no records content.
* [Sorting](https://ej2.syncfusion.com/react/documentation/api/multi-select#sortorder) - Sorts the list items in alphabetical order (either ascending or descending).
* [Filtering](https://ej2.syncfusion.com/react/demos/#/material/multi-select/filtering) - Filters the list items based on a character typed in the search box.
* [Custom value](https://ej2.syncfusion.com/react/demos/#/material/multi-select/custom-value) - Allows users to select a new custom value.
* [Accessibility](https://ej2.syncfusion.com/react/documentation/multi-select/accessibility) - Provided with built-in accessibility support that helps to access all the DropDownList component features using the keyboard, screen readers, or other assistive technology devices.
### React ListBox
The [React ListBox](https://www.syncfusion.com/react-components/react-listbox?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm) component is a graphical user interface for displaying a list of items with multi-selection options. It has a rich appearance and allows users to select one or more items from the list using checkboxes or keyboard interactions.
<p align="center">
<a href="https://ej2.syncfusion.com/react/documentation/list-box/getting-started/?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm">Getting Started</a> .
<a href="https://ej2.syncfusion.com/react/demos/?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm#/bootstrap5/list-box/default">Online demos</a> .
<a href="https://www.syncfusion.com/react-components/react-listbox?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm">Learn more</a>
</p>
<p align="center">
<img alt="React ListBox Component" src="https://raw.githubusercontent.com/SyncfusionExamples/nuget-img/master/react/react-listbox.png">
</p>
#### Key features
* [Data binding](https://ej2.syncfusion.com/react/documentation/list-box/data-binding) - Binds and accesses the list of items from local or server-side data source.
* [Dual listbox](https://ej2.syncfusion.com/react/demos/?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm#/bootstrap5/list-box/dual-list-box) - Allows transferring and reordering the list item between two ListBoxes.
* [Drag and drop](https://ej2.syncfusion.com/react/demos/?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm#/bootstrap5/list-box/drag-and-drop) - Allows drag and drop the list item with the same/multiple ListBox.
* [Grouping](https://ej2.syncfusion.com/react/documentation/list-box/sorting-and-grouping#grouping) - Groups the logically related items under a single or specific category.
* [Templates](https://ej2.syncfusion.com/react/demos/?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm#/bootstrap5/list-box/template) - Customizes the list items.
* [Sorting](https://ej2.syncfusion.com/react/documentation/list-box/sorting-and-grouping) - Sorts the list items in alphabetical order (either ascending or descending).
* [Accessibility](https://ej2.syncfusion.com/react/documentation/list-box/accessibility) - Provided with built-in accessibility support that helps to access all the ListBox component features using the keyboard, screen readers, or other assistive technology devices.
<p align="center">
Trusted by the world's leading companies
<a href="https://www.syncfusion.com/">
<img src="https://raw.githubusercontent.com/SyncfusionExamples/nuget-img/master/syncfusion/syncfusion-trusted-companies.webp" alt="Syncfusion logo">
</a>
</p>
## Setup
To install `dropdowns` and its dependent packages, use the following command.
```
npm install /ej2-react-dropdowns
```
## Supported frameworks
DropDown components are also offered in the 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/> [JavaScript](https://www.syncfusion.com/javascript-ui-controls?utm_medium=listing&utm_source=github) | [<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/> [Angular](https://www.syncfusion.com/angular-components/?utm_medium=listing&utm_source=github) | [<img src="https://ej2.syncfusion.com/github/images/vue.svg" height="50" />](https://www.syncfusion.com/vue-ui-components?utm_medium=listing&utm_source=github)<br/> [Vue](https://www.syncfusion.com/vue-ui-components?utm_medium=listing&utm_source=github) | [<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/> [ASP.NET Core](https://www.syncfusion.com/aspnet-core-ui-controls?utm_medium=listing&utm_source=github) | [<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/> [ASP.NET MVC](https://www.syncfusion.com/aspnet-mvc-ui-controls?utm_medium=listing&utm_source=github) |
| :-----: | :-----: | :-----: | :-----: | :-----: |
## Showcase samples
* Loan Calculator - [Source](https://github.com/syncfusion/ej2-showcase-react-loan-calculator), [Live Demo](https://ej2.syncfusion.com/showcase/react/loancalculator/?utm_source=npm&utm_medium=listing&utm_campaign=react-navigation-npm#/default)
## Support
Product support is available through the following mediums.
* [Support ticket](https://support.syncfusion.com/support/tickets/create) - Guaranteed Response in 24 hours | Unlimited tickets | Holiday support
* [Community forum](https://www.syncfusion.com/forums/essential-js2?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm)
* [GitHub issues](https://github.com/syncfusion/ej2-react-ui-components/issues/new)
* [Request feature or report bug](https://www.syncfusion.com/feedback/react?utm_source=npm&utm_medium=listing&utm_campaign=react-dropdown-npm)
* Live chat
## Changelog
Check the changelog [here](https://github.com/syncfusion/ej2-react-ui-components/blob/master/components/dropdowns/CHANGELOG.md). Get minor improvements and bug fixes every week to stay up to date with frequent updates.
## License and copyright
> This is a commercial product and requires a paid license for possession or use. Syncfusion’s licensed software, including this component, is subject to the terms and conditions of Syncfusion's [EULA](https://www.syncfusion.com/eula/es/). To acquire a license for 80+ [React UI components](https://www.syncfusion.com/react-components), 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.
See [LICENSE FILE](https://github.com/syncfusion/ej2/blob/master/license?utm_source=npm&utm_campaign=dropdown) for more info.
© Copyright 2025 Syncfusion<sup>®</sup> Inc. All Rights Reserved. The Syncfusion<sup>®</sup> Essential Studio<sup>®</sup> license and copyright applies to this distribution.