<Select>
Displays a dropdown with fixed multichoice options.
If you want dynamic responses from an API use the <AutoSuggest>
with the onAutoSuggest
prop.
Only <OptionRoot>
is a valid child.
Use of <Select>
<Selectid="myEmail"name="email"isRequired={false}labelHtml={{ en: 'Email' }}hintHtml={{ en: 'E.g. user@example.com' }}choosePromptHtml={{ en: 'Choose an email' }}><OptionRoot><OptionGroup id="myGroup"><Option id="myOption1" /><Option id="myOption2" /></OptionGroup><Option id="myOption3" /></OptionRoot></Select>
For config of <OptionRoot>
/<OptionGroup>
/<Option>
read their docs.
<Select>
, <Checkboxes>
and <Radios>
share the same options, making it easy to switch between them.
<Select>
's props
Prop | About | Type |
---|---|---|
choosePromptHtml | Localisable HTML: When multichoice is displayed in a Provide an empty string to bypass use this feature. Any HTML will be removed when displayed using Formally's default renderer. | LocalisedHtml |
hideInAnswerSummary | Whether to hide any answers below this. | boolean |
hintHtml | Localisable HTML: Hint content | LocalisedHtml |
isRequired | Whether users are required to fill in this form field. This setting affects | boolean |
labelHelpPopoutContentButtonLabel | Localisable text: Popout Content button label | LocalisedPlainText |
labelHelpPopoutContentModalContentHtml | Localisable text: Popout Content modal title | LocalisedHtml |
labelHelpPopoutContentModalHeadingHtml | Localisable text: Popout Content modal title | LocalisedHtml |
labelHtml | Localisable HTML: Label content | LocalisedHtml |
name | The Name of the form control. Submitted with the form as part of a name:value pair in the | string |
showOptionHints | Whether to display option hints. In some cases (eg. | boolean |
tagsById | A list of tags for for this form field. | string[] |
validationErrorInvalidHtml | Localisable HTML: invalid validation content | LocalisedHtml |
validationErrorRequiredHtml | Localisable HTML: required validation content | LocalisedHtml |
id | Component Id. Must be unique within the form. | string |
meta | Arbitrary metadata on this node. This is useful when developing custom controls as it allows you to pass down metadata/extensions. | string |
hasChildrenById | Non-editable. Used to indicate that this component doesn't have children. | false |
hasTagsById | Non-editable. Used to indicate that this component has tags by id. | true |
isFormField | Non-editable. Used to indicate that this component is a form field. | true |
isMultichoice | Non-editable. Used to indicate that this component is a multichoice form field like | true |
options | If used in React this is non-editable. Only use this directly if constructing a document from JavaScript. | OptionNodes |
pendingAttachments | Non-editable. This is an Internal API that shouldn't be used by developers. When using the SDK with JSX then React will useEffect components leaf-to-root, meaning that the parent node won't exist when the leaf is trying to attach itself. So this is a queue of pending attachments by orphans listing the parents they want. Thankfully it's just data, tragedy averted. | { from: string; to: string; }[] |
type | Non-editable. Type of component of | "Select" |