MultiSelectProps
Represents the props of the KendoReact MultiSelect component.
accessKey?
string
Specifies the accessKey
of the MultiSelect.
allowCustom?
boolean
Specifies whether the MultiSelect allows user-defined values that are not present in the dataset (see example). Defaults to false
.
ariaDescribedBy?
string
Identifies the element(s) which will describe the component, similar to HTML aria-describedby attribute. For example these elements could contain error or hint message.
ariaLabelledBy?
string
Identifies the element(s) which will label the component.
autoClose?
boolean
(default: true) Determines whether to close the options list of the MultiSelect after the item selection is finished.
class App extends React.Component {
render() {
return (
<MultiSelect
data={[ "Albania", "Andorra", "Austria", "Belarus" ]}
autoClose={false}
/>
);
}
}
ReactDOM.render(<App />, document.querySelector('my-app'));
className?
string
Sets additional classes to the MultiSelect.
data?
any[]
Sets the data of the MultiSelect (see example).
dataItemKey?
string
Sets the key for comparing the data items of the MultiSelect (see example). If dataItemKey
is not set, the MultiSelect compares the items by reference.
defaultValue?
Array<any>
Sets the default value of the MultiSelect. Similar to the native select
HTML element.
dir?
string
Represents the dir
HTML attribute.
disabled?
boolean
Sets the disabled state of the MultiSelect.
fillMode?
null | "solid" | "flat" | "outline"
(default: solid
)
Configures the fillMode
of the MultiSelect.
The available options are:
- solid
- flat
- outline
- null—Does not set a fillMode
className
.
filter?
string
Sets the value of filtering input. Useful for making the filtering input a controlled component.
filterable?
boolean
Enables the filtering functionality of the MultiSelect (more information and examples).
focusedItemIndex?
(data: any, inputText: string, textField?: string) => number
If set, the MultiSelect will use it to get the focused item index.
Default functionality returns the first item which starts with the input text.
const focusedItemIndex = (data, inputText, textField) => {
let text = inputText.toLowerCase();
return data.findIndex(item =>
String(textField ? item[textField] : item).toLowerCase().includes(text));
};
<MultiSelect focusedItemIndex={focusedItemIndex} />
footer?
React.ReactNode
Sets the footer component of the MultiSelect (see example).
header?
React.ReactNode
Sets the header component of the MultiSelect (see example).
id?
string
Specifies the id of the component.
itemRender?
(li: ReactElement<HTMLLIElement>, itemProps: ListItemProps) => React.ReactNode
Fires when a MultiSelect item is about to be rendered (see example). Used to override the default appearance of the list items.
label?
string
Renders a floating label for the MultiSelect.
listNoDataRender?
(element: ReactElement<HTMLDivElement>) => React.ReactNode
Fires when the element which indicates no data in the popup is about to be rendered (see example). Used to override the default appearance of the element.
loading?
boolean
Sets the loading state of the MultiSelect (see example).
name?
string
Specifies the name
property of the input
DOM element.
This property is part of the FormComponentProps interface.
onBlur?
(event: MultiSelectBlurEvent) => void
Fires each time the MultiSelect gets blurred.
onChange?
(event: MultiSelectChangeEvent) => void
Fires each time the value of the MultiSelect is about to change (see examples).
onClose?
(event: MultiSelectCloseEvent) => void
Fires each time the popup of the MultiSelect is about to close.
onFilterChange?
(event: MultiSelectFilterChangeEvent) => void
Fires each time the user types in the filter input (see example). You can filter the source based on the passed filtration value.
onFocus?
(event: MultiSelectFocusEvent) => void
Fires each time the user focuses the MultiSelect.
onOpen?
(event: MultiSelectOpenEvent) => void
Fires each time the popup of the MultiSelect is about to open.
onPageChange?
(event: MultiSelectPageChangeEvent) => void
Fires when both the virtual scrolling of the MultiSelect is enabled and when the component requires data for another page (see example).
opened?
boolean
Sets the opened and closed state of the MultiSelect.
placeholder?
string
The hint that is displayed when the MultiSelect is empty.
popupSettings?
Configures the popup of the MultiSelect.
required?
boolean
Specifies if null
is a valid value for the component.
This property is part of the FormComponentProps interface.
rounded?
null | "small" | "medium" | "large" | "full"
(default: medium
)
Configures the roundness
of the MultiSelect.
The available options are:
- small
- medium
- large
- full
- null—Does not set a rounded
className
.
size?
null | "small" | "medium" | "large"
(default: medium
)
Configures the size
of the MultiSelect.
The available options are:
- small
- medium
- large
- null—Does not set a size
className
.
style?
CSSProperties
The styles that are applied to the MultiSelect.
tabIndex?
number
Specifies the tabIndex
of the MultiSelect.
tagRender?
(tagData: TagData, tag: ReactElement) => ReactElement
Fires when a tag element is about to be rendered (see example). Used to override the default appearance of the element.
tags?
Array<TagData>
Sets the tags of the MultiSelect (see example).
textField?
string
Sets the data item field that represents the item text (see example). If the data contains only primitive values, do not define it.
valid?
boolean
Overrides the validity state of the component.
If valid
is set, the required
property will be ignored.
This property is part of the FormComponentProps interface.
validationMessage?
string
Controls the form error message of the component. If set to an empty string, no error will be thrown.
This property is part of the FormComponentProps interface.
validityStyles?
boolean
If set to false
, no visual representation of the invalid state of the component will be applied.
This property is part of the FormComponentProps interface.
value?
Array<any>
Sets the value of the MultiSelect (see example). It can either be of the primitive (string, numbers) or of the complex (objects) type.
virtual?
Configures the virtual scrolling of the MultiSelect (see example).