Skip to main content

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 Send it true

  • when a button with submit action is pressed (sending multiple fields at once)

Field tutorial

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
ValueDescriptionExample
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
ValueDescription
trueDefault value. Objects expand to fill the available space.
falseObjects 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
ValueDescription
trueDefault value. Objects shrink to fit the available space.
falseObjects 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
ValueDescriptionExample
<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.

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
ValueDescription
<string>Placeholder text.

Read Only

Specifies if the field is read only.

The default value is: false.

Attribute Values
ValueDescription
falseDefault value. Can be written by the user.
trueCan'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
ValueDescription
autoDefault value. The value is sent only if there's no buttons with submit action in the same or a parent container.
trueThe value is sent automatically on change.
falseThe 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
ValueDescription
falseDefault value. Feedback is disabled.
trueFeedback 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
ValueDescription
trueShow the clear button when there's any value set.
falseDefault value. Hide the clear button.

Type

Type

Specifies the type of the field.

The default value is: text.

Attribute Values
ValueDescription
textDefault value. Single line text field.
multilineMultiline text field.
dateDate field.
timeTime field.
time-intervalTime interval field.
keypadKeypad field.
selectSelect field.

Min

Specifies the minimum value allowed.

Attribute Values
ValueDescription
<string>Minimum value.

Max

Specifies the maximum value allowed.

Attribute Values
ValueDescription
<string>Maximum value.

Digits

Specifies the number of digits allowed.

Attribute Values
ValueDescription
autoAny number of digits.
<int>Maximum number of digits.

Decimals

Specifies the number of decimals allowed.

The default value is: 0.

Attribute Values
ValueDescription
<int>Number of decimals.

Label

Specifies a label.

Attribute Values
ValueDescription
<string>Label.

Data Mode

Specifies the mode of the data.

The default value is: items.

Attribute Values
ValueDescription
itemsDefault value. Data is set with the UI attribute Items.
listData is a list of comma-separated values. Set in the List attribute.
datasourceData is set by a linked datasource.

Items

Specifies the items.

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
ValueDescriptionExample
<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

note

This attribute has been deprecated since ver. 4.0

Labels

note

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.

Multi

Specifies if the field is multi select.

The default value is: false.

Attribute Values
ValueDescription
falseDefault value. Single select.
trueMulti 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
ValueDescription
trueDisplay the filter field.
falseDefault 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
ValueDescription
<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
ValueDescriptionExample
<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
ValueDescription
falseDefault value. Only the items in the list can be selected.
trueThe user can input a value that is not in the list.

Specifies the width of the select's popup.

The default value is: auto.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Attribute Values
ValueDescription
autoDefault 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.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Attribute Values
ValueDescription
trimRemoves leading and trailing whitespaces and line breaks.
carriage-returnRemoves carriage returns.
non-printableRemoves non-printable characters.
lowercaseConverts the value to lowercase.
uppercaseConverts the value to uppercase.

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
ValueDescription
extendedDefault value. HH:mm:ss.SSSS Extended Format.
basicHHmmssSSSS Basic Format.
timestampUnix Timestamp: Seconds since the Unix Epoch (January 1, 1970 00:00:00 GMT).

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
ValueDescriptionExample
<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
ValueDescription
minuteDefault value. Minute.
secondSecond.
msMs.

Value Options

Specifies additional value options, which appear as buttons.

The default value is: [{"value":"*", "label":"- -"},{"value":"now", "label":"$now;"}].

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Attribute Values
ValueDescription
<array>Array of JSON options, each with value and label properties.

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
ValueDescriptionExample
<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
ValueDescription
yearYear.
dayDay.
hourDefault value. Hour.
minuteMinute.
secondSecond.
msMs.

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
ValueDescription
yearYear.
dayDay.
hourDefault value. Hour.
minuteMinute.
secondSecond.
msMs.

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
ValueDescription
yearYear.
dayDay.
hourHour.
minuteDefault value. Minute.
secondSecond.
msMs.

Value Options

Specifies additional value options, which appear as buttons.

The default value is: [{"value":"*", "label":"- -"},{"value":"now", "label":"$now;"}].

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Attribute Values
ValueDescription
<array>Array of JSON options, each with value and label properties.

Time Display Format

Specifies the field's format.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

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
ValueDescriptionExample
<string>Date value formatted as specified in Data Format.2020-12-31
nowCurrent 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
ValueDescriptionExample
<string>Date value formatted as specified in Data Format.2020-12-31
nowCurrent date of the browser.
[+|-][y|M|w|d]Relative date, where y=year, M=month, w=week, d=day.+1w

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
ValueDescription
extendedDefault value. YYYY-MM-DD ISO 8601 Extended Format.
basicYYYYMMDD ISO 8601 Basic Format.
timestampUnix Timestamp: Seconds since the Unix Epoch (January 1, 1970 00:00:00 GMT).

Value Options

Specifies additional value options, which appear as buttons.

The default value is: [{"value":"*", "label":"- -"},{"value":"now", "label":"$today;"}].

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Attribute Values
ValueDescription
<array>Array of JSON options, each with value and label properties.

Date Display Format

Specifies the field's format.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

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
ValueDescription
falseDefault value. Typed value is not hidden.
trueHide the typed value.
toggleShow a toggle button that allows the user to show the typed value.
toggle-falseShow 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
ValueDescription
falseDefault value. The field is not required.
trueThe field is required.

Validate Key

Specifies a regular expression to be validated on a keypress. E.g. "[a-z]" will allow only lowercase letters.

Won't work on Android devices.

Attribute Values
ValueDescription
[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.
<string>Regular expression.

Validate Value

Specifies a regular expression that the field's value must match.

Attribute Values
ValueDescription
[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
ValueDescription
<int>Length in characters.

Max Length

Specifies the maximum number of characters allowed in the field.

Attribute Values
ValueDescription
<int>Length in characters.

Validate Tooltip

Specifies a custom validation tooltip to display when focusing the field. Displayed only if the current value doesn't match the validation criteria.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Attribute Values
ValueDescription
<string>Validation tooltip.

Layout

Prefix

Specifies a prefix to display before the field's value.

Attribute Values
ValueDescription
<string>Prefix text.

Suffix

Specifies a suffix to display after the field's value.

Attribute Values
ValueDescription
<string>Suffix text.

Icon

Specifies the field's icon image.

Attribute Values
ValueDescription
<image>Image path or icon id.

Secondary Icon

Specifies the field's secondary icon.

The default value is: auto.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Attribute Values
ValueDescription
<image>Image path or icon id.

Background

Specifies the field's background color.

Attribute Values
ValueDescription
<CSS Color>Color.

Focus Tooltip

Specifies a description tooltip to display when focusing the field.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Attribute Values
ValueDescription
<string>Tooltip text.

Error

Error

Specifies that the field is in error state.

The default value is: false.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

note

This attribute is live. It can't be set from the Project Editor, it needs to be set dynamically with a UISet.

Attribute Values
ValueDescription
falseDefault value. Normal state.
trueError state.

Error Label

Specifies a custom error label to display under the field. Displayed only if the field is in error state.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

note

This attribute is live. It can't be set from the Project Editor, it needs to be set dynamically with a UISet.

Attribute Values
ValueDescription
<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.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

note

This attribute is live. It can't be set from the Project Editor, it needs to be set dynamically with a UISet.

Attribute Values
ValueDescription
<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
ValueDescriptionExample
<integer>Font size in pixels.
<percentage>%Relative font size in percentage.90%

Font Color

Specifies the text CSS color.

Attribute Values
ValueDescriptionExample
<html color>Color in any html accepted format.#ff0000

Font Weight

Specifies the weight of the font.

The default value is: normal.

Attribute Values
ValueDescription
normalDefault value. Normal.
boldBold.
bolderBolder.
lighterLighter.

Italic

Show the text in italics.

The default value is: false.

Attribute Values
ValueDescription
falseDefault value. Normal.
trueItalics.

Small Caps

Sets the font to small caps.

The default value is: false.

Attribute Values
ValueDescription
falseDefault value. Normal.
trueSmall caps.

Decoration

Specifies the text decoration.

The default value is: none.

Attribute Values
ValueDescription
noneDefault value. No decoration.
underlineUnderline.
overlineOverline.
line-throughLine through.

Text Align

Sets the horizontal alignment of the text.

The default value is: none.

Attribute Values
ValueDescription
noneDefault value. No alignment.
leftLeft alignment.
rightRight alignment.
centerCenter alignment.
justifyJustified alignment.

Line Height

Sets the line height of the text.

The default value is: 1.0.

Attribute Values
ValueDescription
<float>Specify the line height as a multiple of the font size.

CSS Style

note

This attribute has been deprecated since ver. 4.0

View

Visible

Sets the object's visibility.

The default value is: true.

Attribute Values
ValueDescription
trueDefault value. Visible.
falseHidden.

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
ValueDescription
trueDefault value. Enabled.
falseDisabled.

Blinks the object at the specified speed.

The default value is: false.

Attribute Values
ValueDescription
falseDefault value. Not blinking.
slowBlinks slowly.
fastBlinks fast.

Transition

Specifies the transition effect when the object is shown or hidden.

The default value is: none.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Attribute Values
ValueDescription
noneDefault value. No transition.
fadeFade in/out.
fade-leftSlide from left and fade in/out.
fade-rightSlide from right and fade in/out.
fade-upSlide from top and fade in/out.
fade-downSlide from bottom and fade in/out.
slide-leftSlide from left.
slide-rightSlide from right.
slide-upSlide from top.
slide-downSlide from bottom.
zoom-inZoom in.
zoom-outZoom out.
3d-flip-left3D flip from left.
3d-flip-right3D flip from right.

Transition Duration

Specifies the transition duration in milliseconds.

The default value is: 300.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Attribute Values
ValueDescription
<integer>Duration in milliseconds.

Transition Delay

Specifies the transition delay in milliseconds.

The default value is: 0.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Attribute Values
ValueDescription
<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
ValueDescription
0The object is fully transparent.
>0.0, <1.0The object is translucent (content behind the element can be seen).
1.0Default 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.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Attribute Values
ValueDescriptionExample
<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.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Attribute Values
ValueDescription
<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.

note

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.

note

This attribute is static. Its value can't be changed dynamically with a uiSet command or with a value binding.

Attribute Values
ValueDescription
falseDefault value. Object is included in the UI.
trueObject is excluded from the UI.