Working with Forms
Introduction to Forms
There are several objects that allow the creation of a form to send data to the server. These objects are of three types: fields, submit buttons and containers.
- fields:
- fields (panel form)
- timepanel: similar to time
- datepanel: similar to date
- keypadpanel: similar to keypad
- submit buttons:
- submit: default size
- submitmini: "mini" size
- submitmicro: "micro" size
- submitimage: custom image
- container: to group multiple objects
Fields of type time, date and keypad have a specific panel used to input the value, that will be visible in a popup when the field is clicked. These panels can also be added directly to the page, using the timepanel, datepanel and keypadpanel objects.
Containers are used to group fields and submit buttons.
Submit buttons are used to commit changes and send all the fields' values to the server. Only the fields inside the same container and nested containers will be considered.
Fields can also have an autosubmit mode, that sends the value when there's a change, instead of waiting for the user to click on a Submit button. This mode is automatically activated if there's no Submit button on the page (if the field is on page), or in one of the parent containers, up to the page. This autosubmit mode can also be toggled using a specific UISet (for example see the autosubmit UI Attribute on the input object).
Keypad
Pressing the OK button or pressing the Enter key on the physical keyboard is equivalent to pressing the submit button of a form; HSYCO will call the method: userCommand(String name, String param) in the user.class class, passing: name - the id of the (keypad) object param - the numeric value entered via the keypad. The USER <id> event will be generated as well. If the (keypad!id) object's id starts with $, then the server will also automatically set a variable named $<id> to the appropriate value. The (keypad) object can also be used in forms, just like an (input) object. The (keypad) object has the identified version only.