You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
MUI Select Lacks Basic Placeholder and Clear Functionality #49539
MUI Select lacks two fundamental features: native placeholder support and a built-in clear option.
Implementing either requires unnecessary workarounds and boilerplate. This is a significant usability and developer-experience deficiency in an otherwise mature component library.
My proposal is to support two simple props on Select:
placeholder: Displays placeholder text when no value is selected, without requiring displayEmpty and renderValue.
clearable: Provides a built-in clear button that resets the selection to an empty value.
My use case is the standard non-native Select. The existing displayEmpty + renderValue approach works, but requires unnecessary boilerplate for something as basic as displaying a placeholder.
These are basic features that shouldn't require custom rendering or additional components. The goal is to reduce boilerplate and make Select easier to use out of the box.
This issue asks for two Select features. Each one already has an open issue:
placeholder prop:#44821 covers this. In #44502, placeholder was removed from Select's props because it had no effect, and several people in [docs][select] placeholder prop is omitted #44821 have asked for real placeholder support. #49517 asks for the same thing (<Select placeholder="Select an option"> with no displayEmpty/renderValue boilerplate).
clearable prop / built-in clear button:#38153 asks for a clearable prop on Material UI Select. It's tagged as waiting for community upvotes and open for API discussion (clearable prop vs. an indicator component).
Current workarounds (documented, not new APIs):
Placeholder: the Select docs say placeholder is not available on Select and point to the Placeholder demo. That demo uses displayEmpty together with renderValue, returning your placeholder text when the value is empty.
Clear button: a maintainer shared a clearable Select demo in this #38153 comment. It adds an end adornment button that resets the value to ''. I haven't opened or run that sandbox.
Agent-generated diagnosis; conclusions have not been independently verified. Workflow run. 🤖 Triage · Claude Code · claude-opus-5-5 · high effort · 8 turns · 0m29s · $0.17 · run
Activity
mordeccai commentedon Oct 27, 2026
Thanks for the triage.
My proposal is to support two simple props on
Select:placeholder: Displays placeholder text when no value is selected, without requiringdisplayEmptyandrenderValue.clearable: Provides a built-in clear button that resets the selection to an empty value.My use case is the standard non-native
Select. The existingdisplayEmpty+renderValueapproach works, but requires unnecessary boilerplate for something as basic as displaying a placeholder.These are basic features that shouldn't require custom rendering or additional components. The goal is to reduce boilerplate and make
Selecteasier to use out of the box.github-actions commentedon Oct 28, 2026
This issue asks for two
Selectfeatures. Each one already has an open issue:placeholderprop: #44821 covers this. In #44502,placeholderwas removed fromSelect's props because it had no effect, and several people in [docs][select]placeholderprop is omitted #44821 have asked for real placeholder support. #49517 asks for the same thing (<Select placeholder="Select an option">with nodisplayEmpty/renderValueboilerplate).clearableprop / built-in clear button: #38153 asks for aclearableprop on Material UISelect. It's tagged as waiting for community upvotes and open for API discussion (clearableprop vs. an indicator component).Current workarounds (documented, not new APIs):
placeholderis not available onSelectand point to the Placeholder demo. That demo usesdisplayEmptytogether withrenderValue, returning your placeholder text when the value is empty.''. I haven't opened or run that sandbox.Next steps
placeholderprop is omitted #44821 (placeholder) and [Select][material][joy] add clearable prop to clear value #38153 (clearable).placeholderprop is omitted #44821 and [Select][material][joy] add clearable prop to clear value #38153, and add your proposed API (aplaceholderthat works withoutdisplayEmpty/renderValue, and aclearablethat resets to an empty value) as a comment there. Discussion in one place helps those issues get prioritized.Agent-generated diagnosis; conclusions have not been independently verified. Workflow run.
🤖 Triage · Claude Code · claude-opus-5-5 · high effort · 8 turns · 0m29s · $0.17 · run