Field
The Field object is a multifunctional, editable input.
It supports various data types, providing flexibility for different input scenarios:
-
Text (Default): A single-line text field for general input
-
Multiline: A multi-line text field, suitable for longer descriptions or notes
-
Date: date values
-
Time: time values
-
Keypad: a numeric keypad for code entry
-
Select: presents a selection list of options
The field value is sent as a command to the server:
-
when the user changes it, if
Auto Sendit true -
when a button with
submitaction is pressed (sending multiple fields at once)
Attributes
Common
ID
Sets the object's ID.
The ID identifies the object and is used to reference it in UISet actions, allowing to change its attributes dynamically.
The ID is not unique, it can be shared among multiple objects to quickly change a common attribute.
IDs can't be changed with a UISet action, but they can have a Value Binding assigned to them. Value Bindings on IDs allow an object to be dinamically attached to a set of attribute values.
E.g. the following Value Binding switches the ID of the object between mybutton1 and mybutton2 based on the value of the UISet button.address:
Value binding:
="mybutton" + ui('button', 'address')
UISet:
UISet('button', 'address', '1') switches the ID to mybutton1
UISet('button', 'address', '2') switches the ID to mybutton2
Position and Size
Position
Sets the object's position.
The default value is: x0y0.
Attribute Values
| Value | Description | Example |
|---|---|---|
| x<left>y<top> | Specify left/top coordinates in pixels. | x10y20 |
Flex Grow
Specifies if the objects should grow to fill the available space.
The default value is: true.
Attribute Values
| Value | Description |
|---|---|
| true | Default value. Objects expand to fill the available space. |
| false | Objects do not grow to fill the available space. |
Flex Shrink
Specifies if the objects should shrink to fit the available space.
The default value is: true.
Attribute Values
| Value | Description |
|---|---|
| true | Default value. Objects shrink to fit the available space. |
| false | Objects do not shrink to fit the available space. |
Width
Sets the object's width in pixels.
Minimum value is 1.
Height
Sets the object's height in pixels.
Minimum value is 1.
Field
Name
Specifies the name of the field, used to send a command to the server, along with the field's value as a parameter.
If the name starts with $, then the server will automatically set a variable with the same name as the command, containing the command's parameter.
The default value is: =id.
Attribute Values
| Value | Description | Example |
|---|---|---|
| <string> | Command name. | |
| $[variable name] | A command name that sets a variable. | $myvar |
| $[variable name]! | A command name that sets a persistent variable. | $myvar! |
Value
Specifies the field's value.
For more information on the format of the value, see the specific field type:
Default Value
Specifies the field's popup value when the field has no value. This allows a quick selection of a default value by pressing the Enter key or OK button.
For more information on the format of the value, see the specific field type:
Placeholder
Specifies a short hint that describes the expected value of the field (e.g. a sample value or a short description of the expected format).
The short hint is displayed in the input field before the user enters a value.
Attribute Values
| Value | Description |
|---|---|
| <string> | Placeholder text. |
Read Only
Specifies if the field is read only.
The default value is: false.
Attribute Values
| Value | Description |
|---|---|
| false | Default value. Can be written by the user. |
| true | Can't be written by the user (can still be changed with a uiSet). |
Auto Send
Specifies whether the value is automatically sent on change or is sent through a button with submit action.
The default value is: auto.
Attribute Values
| Value | Description |
|---|---|
| auto | Default value. The value is sent only if there's no buttons with submit action in the same or a parent container. |
| true | The value is sent automatically on change. |
| false | The value is not automatically sent. |
Feedback
If feedback is enabled, when the action is performed, a loader is displayed until the server responds.
Also the action can't be performed again until the server responds.
The default value is: false.
Attribute Values
| Value | Description |
|---|---|
| false | Default value. Feedback is disabled. |
| true | Feedback is enabled. |
Change Delay
Sets the delay in milliseconds by which changes are detected. If the field is working in autosend mode, this value determines the delay between the last button press and the value being sent to the server.
Clear Button
Show a clear button that clears the field's value.
The default value is: false.
Attribute Values
| Value | Description |
|---|---|
| true | Show the clear button when there's any value set. |
| false | Default value. Hide the clear button. |
Type
Type
Specifies the type of the field.
The default value is: text.
Attribute Values
| Value | Description |
|---|---|
| text | Default value. Single line text field. |
| multiline | Multiline text field. |
| date | Date field. |
| time | Time field. |
| time-interval | Time interval field. |
| keypad | Keypad field. |
| select | Select field. |
Min
Specifies the minimum value allowed.
Attribute Values
| Value | Description |
|---|---|
| <string> | Minimum value. |
Max
Specifies the maximum value allowed.
Attribute Values
| Value | Description |
|---|---|
| <string> | Maximum value. |
Digits
Specifies the number of digits allowed.
Attribute Values
| Value | Description |
|---|---|
| auto | Any number of digits. |
| <int> | Maximum number of digits. |
Decimals
Specifies the number of decimals allowed.
The default value is: 0.
Attribute Values
| Value | Description |
|---|---|
| <int> | Number of decimals. |
Label
Specifies a label.
Attribute Values
| Value | Description |
|---|---|
| <string> | Label. |
Data Mode
Specifies the mode of the data.
The default value is: items.
Attribute Values
| Value | Description |
|---|---|
| items | Default value. Data is set with the UI attribute Items. |
| list | Data is a list of comma-separated values. Set in the List attribute. |
| datasource | Data is set by a linked datasource. |
Items
Specifies the items.
For the full item reference, see List Item.
Attribute Values
| Value | Description | Example |
|---|---|---|
| <JSON array> | Array of list items. | [{"value":"kitchen","label":"Kitchen"}] |
List
Sets the items. An item with a label "---" (three hyphen-minus characters) is treated as a separator and its value is ignored.
Attribute Values
| Value | Description | Example |
|---|---|---|
| <comma-separated list> | Items specified as a comma-separated list. | item1,item2,item3 |
| <array> | Items specified as an array of strings. | ["item1","item2","item3"] |
| <array of arrays> | Items specified as an array of arrays. Each item has an array of value and label. | [[1,"label1"],[2,"label2"],[3,"label3"]] |
| <array of arrays> | Items specified as an array of arrays. Each item has an array of values that can be recalled from the template attribute. | [[1,"label1","descr1"],[2,"label2","descr2"],[3,"label3","descr3"]] |
Values
This attribute has been deprecated since ver. 4.0
Labels
This attribute has been deprecated since ver. 4.0
Datasource ID
Specifies the ID of the datasource.
The datasource keys are used as values, while a column specified in Label Data Name is used as label.
Label Data Name
Specifies the name of the column containing the label.
The default value is: label.
This attribute is static. Its value can't be changed dynamically with a uiSet command or with a value binding.
Multi
Specifies if the field is multi select.
The default value is: false.
Attribute Values
| Value | Description |
|---|---|
| false | Default value. Single select. |
| true | Multi select. |
Template
Specifies the template for the items.
The template can contain placeholders for the values of the items. The placeholders are specified as %0;, %1;, %2;, etc.
For example, if the template is %0; - %1;, %2; and the item is ["value", "label", "descr"], the result is value - label, descr.
If the template is not specified, the items' labels are displayed.
Filter
Displays an input field for filtering the items. After typing a value in the field or setting the Filter Value attribute, any item that does not match the input will be hidden. A match occurs when the filter value is found anywhere within any item's fields ('value', 'label', etc).
The default value is: false.
Attribute Values
| Value | Description |
|---|---|
| true | Display the filter field. |
| false | Default value. Hides the filter field. |
Filter Placeholder
Specifies a short hint that is displayed in the filter field before the user enters a value. Describes the expected value of an input field (e.g. a sample value or a short description of the expected format)
Attribute Values
| Value | Description |
|---|---|
| <string> | A short hint. |
Filter Value
Specifies a string used as filter value. It's applied even if the filter field is hidden.
Attribute Values
| Value | Description | Example |
|---|---|---|
| <string> | The filter string. | Jan 2015 |
Free Input
Specifies if the user can input a value that is not in the list.
The default value is: false.
Attribute Values
| Value | Description |
|---|---|
| false | Default value. Only the items in the list can be selected. |
| true | The user can input a value that is not in the list. |
Popup Width
Specifies the width of the select's popup.
The default value is: auto.
Attribute Values
| Value | Description |
|---|---|
| auto | Default value. Popup is wide enough to fit the content, but not wider than three times the field's width. |
| <int> | Width in pixels. |
Sanitize Value
Specified one or more sanitization options to apply to the field's value before sending it to the server.
Attribute Values
| Value | Description |
|---|---|
| trim | Removes leading and trailing whitespaces and line breaks. |
| carriage-return | Removes carriage returns. |
| non-printable | Removes non-printable characters. |
| lowercase | Converts the value to lowercase. |
| uppercase | Converts the value to uppercase. |
Step
Specifies the step of the time picker, referred to the smallest unit of time that can be selected.
E.g. if the smallest unit is minutes and step is set to 15, the time picker will allow to select only times that are multiple of 15 minutes.
The default value is: 1.
Attribute Values
| Value | Description | Example |
|---|---|---|
| <int> | Step of the picker. | 15 |
Precision
Specifies the precision of the time picker, the smallest unit of time that can be selected
The default value is: minute.
Attribute Values
| Value | Description |
|---|---|
| minute | Default value. Minute. |
| second | Second. |
| ms | Ms. |
Time Value Options
Specifies additional value options, which appear as buttons.
For the full item reference, see Value Option.
Default Values
| Applies When | Value |
|---|---|
interval=='false' | [{"value":"*", "label":"- -"},{"value":"now", "label":"$now;"}] |
interval=='true' | [{"value":"*", "label":"- -"}] |
Attribute Values
| Value | Description | Example |
|---|---|---|
| <JSON array> | Array of JSON options, each with value and label properties. | [{"value":"+15m","label":"In 15 min"}] |
Time Data Format
Specifies the data format, which determines how the value is parsed when received (through a UISet) or sent.
The default value is: extended.
Attribute Values
| Value | Description |
|---|---|
| extended | Default value. HH:mm:ss.SSSS Extended Format. |
| basic | HHmmssSSSS Basic Format. |
| timestamp | Unix Timestamp: Seconds since the Unix Epoch (January 1, 1970 00:00:00 GMT). |
Time Display Format
Specifies the field's format.
Attribute Values
| Value | Description | Example |
|---|---|---|
| <JSON object> | Format configuration object. | {"format":"time","timestyle":"medium","hourcycle":"h12"} |
Step
Specifies the step of the time picker, referred to the smallest unit of time that can be selected.
E.g. if the smallest unit is minutes and step is set to 15, the time picker will allow to select only times that are multiple of 15 minutes.
The default value is: 1.
Attribute Values
| Value | Description | Example |
|---|---|---|
| <int> | Step of the picker. | 15 |
Unit
Specifies the unit of the value.
E.g.
Unit: hour, Max Precision: hour, Min Precision: second. 5:30 will be parsed as 5.5.
Unit: second, Max Precision: hour, Min Precision: second. 5:30 will be parsed as 330.
The default value is: hour.
Attribute Values
| Value | Description |
|---|---|
| year | Year. |
| day | Day. |
| hour | Default value. Hour. |
| minute | Minute. |
| second | Second. |
| ms | Ms. |
Min Precision
Specifies the minimum precision of the time picker, the greatest unit of time that can be selected
The default value is: hour.
Attribute Values
| Value | Description |
|---|---|
| year | Year. |
| day | Day. |
| hour | Default value. Hour. |
| minute | Minute. |
| second | Second. |
| ms | Ms. |
Max Precision
Specifies the maximum precision of the time picker, the smallest unit of time that can be selected.
The default value is: minute.
Attribute Values
| Value | Description |
|---|---|
| year | Year. |
| day | Day. |
| hour | Hour. |
| minute | Default value. Minute. |
| second | Second. |
| ms | Ms. |
Time Interval Value Options
Specifies additional value options, which appear as buttons.
For the full item reference, see Value Option.
Default Values
| Applies When | Value |
|---|---|
| Always | [{"value":"*", "label":"- -"}] |
interval=='false' | [{"value":"*", "label":"- -"},{"value":"now", "label":"$now;"}] |
interval=='true' | [{"value":"*", "label":"- -"}] |
Attribute Values
| Value | Description | Example |
|---|---|---|
| <JSON array> | Array of JSON options, each with value and label properties. | [{"value":"+15m","label":"In 15 min"}] |
From Date
Specifies the earliest selectable date. Dates prior to this will not be
selectable.
The format is specified by the Data Format attribute.
"now" specifies the current date. "[+|-][y|M|w|d]" specifies a date relative to today, where y=year, M=month, w=week, d=day.
The default value is: 1900-01-01.
Attribute Values
| Value | Description | Example |
|---|---|---|
| <string> | Date value formatted as specified in Data Format. | 2020-12-31 |
| now | Current date of the browser. | |
| [+|-][y|M|w|d] | Relative date, where y=year, M=month, w=week, d=day. | -1w |
To Date
Specifies the latest selectable date. Selection of dates beyond this point is not permitted.
The format is specified by the Data Format attribute.
"now" specifies the current date. "[+|-][y|M|w|d]" specifies a date relative to today, where y=year, M=month, w=week, d=day.
The default value is: 2100-12-31.
Attribute Values
| Value | Description | Example |
|---|---|---|
| <string> | Date value formatted as specified in Data Format. | 2020-12-31 |
| now | Current date of the browser. | |
| [+|-][y|M|w|d] | Relative date, where y=year, M=month, w=week, d=day. | +1w |
Date Value Options
Specifies additional value options, which appear as buttons.
For the full item reference, see Value Option.
The default value is: [{"value":"*", "label":"- -"},{"value":"now", "label":"$today;"}].
Attribute Values
| Value | Description | Example |
|---|---|---|
| <JSON array> | Array of JSON options, each with value and label properties. | [{"value":"+1w","label":"Next Week"}] |
Date Data Format
Specifies the data format, which determines how the value is parsed when received (through a UISet) or sent.
The default value is: extended.
Attribute Values
| Value | Description |
|---|---|
| extended | Default value. YYYY-MM-DD ISO 8601 Extended Format. |
| basic | YYYYMMDD ISO 8601 Basic Format. |
| timestamp | Unix Timestamp: Seconds since the Unix Epoch (January 1, 1970 00:00:00 GMT). |
Date Display Format
Specifies the field's format.
Attribute Values
| Value | Description | Example |
|---|---|---|
| <JSON object> | Format configuration object. | {"format":"date","datestyle":"custom","day":"2-digit","month":"short","year":"numeric"} |
Password
Hides the typed value, providing a way for the user to securely enter a password.
In toggle mode, a toggle button is displayed that allows the user to show the typed value.
The default value is: false.
Attribute Values
| Value | Description |
|---|---|
| false | Default value. Typed value is not hidden. |
| true | Hide the typed value. |
| toggle | Show a toggle button that allows the user to show the typed value. |
| toggle-false | Show the toggle button, but show the typed value by default. |
Validation
Required
Specifies if the field is required when submitting multiple fields with a submit button. If true, an empty/null value is considered not valid. When there are non valid fields, the submit button focuses the first non valid field instead of sending data to the server, to prompt the user to fill in the required fields.
The default value is: false.
Attribute Values
| Value | Description |
|---|---|
| false | Default value. The field is not required. |
| true | The field is required. |
Allowed Characters
Specifies a regular expression that defines the characters allowed as input for the custom element. E.g. "[a-z]" will allow only lowercase letters.
It's applied to pasted values as well. Might not work on Android devices.
Attribute Values
| Value | Description |
|---|---|
| [empty] | Default value. No validation, all keys are allowed. |
| [a-z] | Only lowercase letters. |
| [A-Z] | Only uppercase letters. |
| [0-9] | Only numbers. |
| [0-9a-zA-Z] | Only numbers and letters. |
| [^\s\p{C}] | Only printable characters. |
| <string> | Regular expression. |
Validate Value
Specifies a regular expression that the field's value must match.
Attribute Values
| Value | Description |
|---|---|
| [empty] | Default value. No validation, any input is valid. |
| [a-z]+ | Only lowercase letters. |
| [A-Z]+ | Only uppercase letters. |
| [a-zA-Z]+ | Only letters. |
| [0-9]+ | Only numbers. |
| [0-9a-zA-Z]+ | Only numbers and letters. |
| <string> | Any regular expression. |
Min Length
Specifies the minimum number of characters required for the field's validation.
Attribute Values
| Value | Description |
|---|---|
| <int> | Length in characters. |
Max Length
Specifies the maximum number of characters allowed in the field.
Attribute Values
| Value | Description |
|---|---|
| <int> | Length in characters. |
Validate Tooltip
Specifies a custom validation tooltip to display when confirming the field value (on a submit button action or automatically in autosend mode). Displayed only if the current value doesn't match the validation criteria defined by the required, validate value and min length attributes.
Attribute Values
| Value | Description |
|---|---|
| <string> | Validation tooltip. |
Layout
Prefix
Specifies a prefix to display before the field's value.
Attribute Values
| Value | Description |
|---|---|
| <string> | Prefix text. |
Suffix
Specifies a suffix to display after the field's value.
Attribute Values
| Value | Description |
|---|---|
| <string> | Suffix text. |
Icon
Specifies the field's icon image.
Attribute Values
| Value | Description |
|---|---|
| <image> | Image path or icon id. |
Secondary Icon
Specifies the field's secondary icon.
The default value is: auto.
Attribute Values
| Value | Description |
|---|---|
| <image> | Image path or icon id. |
Background
Specifies the field's background color.
Attribute Values
| Value | Description |
|---|---|
| <CSS Color> | Color. |
Focus Tooltip
Specifies a description tooltip to display when focusing the field.
Attribute Values
| Value | Description |
|---|---|
| <string> | Tooltip text. |
Error
Error
Specifies that the field is in error state.
The default value is: false.
This attribute is live. It can't be set from the Project Editor, it needs to be set dynamically with a UISet.
Attribute Values
| Value | Description |
|---|---|
| false | Default value. Normal state. |
| true | Error state. |
Error Label
Specifies a custom error label to display under the field. Displayed only if the field is in error state.
This attribute is live. It can't be set from the Project Editor, it needs to be set dynamically with a UISet.
Attribute Values
| Value | Description |
|---|---|
| <string> | Error label. |
Error Tooltip
Specifies a custom error tooltip to display when focusing the field. Displayed only if the field is in error state.
This attribute is live. It can't be set from the Project Editor, it needs to be set dynamically with a UISet.
Attribute Values
| Value | Description |
|---|---|
| <string> | Error tooltip. |
Typography
Font Family
Specifies the font family.
The default value is: default.
Font Size
Specifies the font size in pixels or percentage (relative to the project's font size).
The default value is: 14.
Attribute Values
| Value | Description | Example |
|---|---|---|
| <integer> | Font size in pixels. | |
| <percentage>% | Relative font size in percentage. | 90% |
Font Color
Specifies the text CSS color.
Attribute Values
| Value | Description | Example |
|---|---|---|
| <html color> | Color in any html accepted format. | #ff0000 |
Font Weight
Specifies the weight of the font.
The default value is: normal.
Attribute Values
| Value | Description |
|---|---|
| normal | Default value. Normal. |
| bold | Bold. |
| bolder | Bolder. |
| lighter | Lighter. |
Italic
Show the text in italics.
The default value is: false.
Attribute Values
| Value | Description |
|---|---|
| false | Default value. Normal. |
| true | Italics. |
Small Caps
Sets the font to small caps.
The default value is: false.
Attribute Values
| Value | Description |
|---|---|
| false | Default value. Normal. |
| true | Small caps. |
Decoration
Specifies the text decoration.
The default value is: none.
Attribute Values
| Value | Description |
|---|---|
| none | Default value. No decoration. |
| underline | Underline. |
| overline | Overline. |
| line-through | Line through. |
Text Align
Sets the horizontal alignment of the text.
The default value is: none.
Attribute Values
| Value | Description |
|---|---|
| none | Default value. No alignment. |
| left | Left alignment. |
| right | Right alignment. |
| center | Center alignment. |
| justify | Justified alignment. |
Line Height
Sets the line height of the text.
The default value is: 1.0.
Attribute Values
| Value | Description |
|---|---|
| <float> | Specify the line height as a multiple of the font size. |
CSS Style
This attribute has been deprecated since ver. 4.0
View
Visible
Sets the object's visibility.
The default value is: true.
Attribute Values
| Value | Description |
|---|---|
| true | Default value. Visible. |
| false | Hidden. |
Enabled
Specifies if the object is enabled or disabled. A disabled object appears as grayed out and can't be interacted with.
The default value is: true.
Attribute Values
| Value | Description |
|---|---|
| true | Default value. Enabled. |
| false | Disabled. |
Blink
Blinks the object at the specified speed.
The default value is: false.
Attribute Values
| Value | Description |
|---|---|
| false | Default value. Not blinking. |
| slow | Blinks slowly. |
| fast | Blinks fast. |
Transition
Specifies the transition effect when the object is shown or hidden.
The default value is: none.
This attribute is experimental. It might not work properly and it might be modified or removed in a future release.
Attribute Values
| Value | Description |
|---|---|
| none | Default value. No transition. |
| fade | Fade in/out. |
| fade-left | Slide from left and fade in/out. |
| fade-right | Slide from right and fade in/out. |
| fade-up | Slide from top and fade in/out. |
| fade-down | Slide from bottom and fade in/out. |
| slide-left | Slide from left. |
| slide-right | Slide from right. |
| slide-up | Slide from top. |
| slide-down | Slide from bottom. |
| zoom-in | Zoom in. |
| zoom-out | Zoom out. |
| 3d-flip-left | 3D flip from left. |
| 3d-flip-right | 3D flip from right. |
Transition Duration
Specifies the transition duration in milliseconds.
The default value is: 300.
This attribute is experimental. It might not work properly and it might be modified or removed in a future release.
Attribute Values
| Value | Description |
|---|---|
| <integer> | Duration in milliseconds. |
Transition Delay
Specifies the transition delay in milliseconds.
The default value is: 0.
This attribute is experimental. It might not work properly and it might be modified or removed in a future release.
Attribute Values
| Value | Description |
|---|---|
| <integer> | Delay in milliseconds. |
Opacity
Sets the object's opacity. Opacity is the degree to which content behind an object is hidden.
The default value is: 1.0.
Attribute Values
| Value | Description |
|---|---|
| 0 | The object is fully transparent. |
| >0.0, <1.0 | The object is translucent (content behind the element can be seen). |
| 1.0 | Default value. The object is fully opaque. |
Rotation
Specifies the degrees by which the object is rotated. A positive number rotates it clockwise, while a negative value rotates it counter-clockwise.
The default value is: 0.
CSS Class
Specifies a CSS Class that applies to the object, useful to customize its appearance. Custom CSS Classes are specified within the custom.css file.
Margin
Specifies the margin of the object. The margin is the space outside the object's border.
This attribute is experimental. It might not work properly and it might be modified or removed in a future release.
Attribute Values
| Value | Description | Example |
|---|---|---|
| <int> | Specify the margin in pixels for all sides of the object. | |
| <top> <right> <bottom> <left> | Specify the margin in pixels for each side of the object. | 10 20 30 40 |
View Scale
Specifies the scale of the object. The scale is the ratio between the object's size and the size of the view it is contained in.
The default value is: 1.0.
This attribute is experimental. It might not work properly and it might be modified or removed in a future release.
Attribute Values
| Value | Description |
|---|---|
| <float> | Specify the scale for both width and height of the object. |
Meta
Comment
Specifies a comment, visible only in the Project Editor. It can be used to add a note or a tag to the object. The filter in the object's SELECT panel applies to the comment as well.
This attribute is static. Its value can't be changed dynamically with a uiSet command or with a value binding.
Exclude
Excludes the object from the UI. Useful to temporarily hide an object without deleting it. Different from the "Visible" attribute, which hides the object in the UI but keeps it in the project, allowing it to be shown again with a UISet.
The default value is: false.
This attribute is static. Its value can't be changed dynamically with a uiSet command or with a value binding.
Attribute Values
| Value | Description |
|---|---|
| false | Default value. Object is included in the UI. |
| true | Object is excluded from the UI. |