Text fields allow users to input, edit, and select text.
import Material.TextField as TextField
type Msg
= ValueChanged String
main =
TextField.filled
(TextField.config
|> TextField.setLabel (Just "My text field")
|> TextField.setValue (Just "hello world")
|> TextField.setOnInput ValueChanged
)Specify a message when the user changes the value inside the text field
Specify a message when the user confirms a changed value inside the text field
Specify a text field to be fullwidth
Specify a text field's placeholder
Specify a text field to be disabled
Disabled text fields cannot be interacted with and have no visual interaction effect.
Specify a text field to be required
Specify a text field's minimum length
Specify a text field's maximum length
Specify a text field's pattern
Specify a text field's leading icon
Specify a text field's trailing icon
Specify additional attributes
TextField.filled TextField.configText fields may have a visible outlined around them by using their
outlined variant.
TextField.outlined TextField.configNote that setFullwidth does not have any effect on an outlined text field.
To make a text field span all of its available width, set its setFullwidth
configuration option to True.
TextField.filled
(TextField.config |> TextField.setFullwidth True)Full width text fields do not support a label and will ignore the setLabel
configuration option. You may use setPlaceholder or provide an extraneous
label for a full width text field.
Outlined text fields do not support setFullwidth and wll ignore this
configuration option.
To disable a text field, set its setDisabled configuration option to True.
TextField.filled
(TextField.config |> TextField.setDisabled True)To mark a text field as an input for entering a passwort, use its setType
configuration option to specify "password".
TextField.filled
(TextField.config |> TextField.setType (Just "password"))Other input types besides "password" may or may not be supported.
To mark a text field as required, set its setRequired configuration option to
True.
TextField.filled
(TextField.config |> TextField.setRequired True)To mark a text field as valid, set its setValid configuration option to
True.
TextField.filled
(TextField.config |> TextField.setValid True)To have a text field display a leading icon, use its setLeadingIcon
configuration option to specify a value of Icon.
TextField.filled
(TextField.config
|> TextField.setLeadingIcon
(Just (TextField.icon [] "wifi"))
)Text field trailing or leading icon -
To have a text field display a trailing icon, use its setTrailingIcon
configuration option to specify a value of Icon.
TextField.filled
(TextField.config
|> TextField.setTrailingIcon
(Just (TextField.icon [] "clear"))
)To have a text field display a character counter, specify its setMaxLength
configuration option, and also add a HelperText.characterCounter as a child
of HelperText.helperLine.
[ TextField.filled
(TextField.config |> TextField.setMaxLength (Just 18))
, HelperText.helperLine [] [ HelperText.characterCounter [] ]
]
Configuration of a text field