Introduction

Select Box is one of the generic HTML Form input elements. In the Form Builder, one is able to define the options available to the Select Box via various means, including with the use of  Form Options Binder

Get Started

The easiest way to see how the Select Box works is to create a new app. Here are the steps:

  1. Start the Joget Server and open the    App Center.

  2. Log in as admin and click on the pencil icon on the    Expenses Claim  to open the  Design App. (see Figure 1)


    Figure 1

  3. Under  FORMS  column, click on  Expense Claim Entry  (see Figure 2)


    Figure 2

  4. Drag and drop a Select Box  element on to the canvas.

  5. Hover  the mouse over the Select Box element on the canvas and click on Edit to open up the Edit Select Box properties.

  6. Fill up the following fields as follows and click on  OK (see Figure 3):

    1. ID: type
    2. Options (Hardcoded):

      Default ValueLabel
      LocalLocal
      InternationalInternational


    Figure 3

  7. Click on  Preview,  click on the options available in the country field.

Select Box Properties

Edit Select Box

NameDescription
ID

Element ID (By declaring as "country", a corresponding database table column "c_country" will be created)

Please see Form Element for more information about defining the ID and list of reserved IDs.

LabelElement Label to be displayed to the end-user.
Options (Hardcoded)

Select Box options

Options defined here will not be put into use if Options Binder is defined below.

Or Choose Options Binder

Options to be populated dynamically using Options Binder plugin.

Performance Warning

If you have thousands of select options or sourcing them from Options Binder, this may cause a significant increase in page load time. Consider using Popup Select Box instead.

Advanced Options

Data

NameDescription
Value

Default Value when there's no existing value found/selected.

A hash variable is accepted here. For example, you may key the following

#currentUser.firstName# #currentUser.lastName#

to pre-populate the field with currently logged in user's name.

You may define multiple default options by separating them using semicolons.

Sample
option1;option2;option3
Multiple Selection

Toggle Multiple Selection.

Validator

Attach a Validator plugin to validate the input value.

When will validation takes place?

Validation will take place whenever a form is submitted except when it is submitted as "Save as Draft".

Workflow Variable

If the form is part of a workflow process, upon saving of the form (by clicking on "Save as Draft" or "Complete" button). The value in this input field will be saved into the corresponding workflow variable named here.

Using a non-existent Workflow Variable name

You will get the following warning with the name printed out (e.g. status) in the server log if you attempt to map to a non-existent Workflow Variable.

context attribute status does not exist in process context - adding new attributes to the process context is not allowed


Dependency

NameDescription
Field ID to control available options based on Grouping

Dynamically change the available options based on the "grouping" attribute defined in the options by matching the current value of the element ID defined. Also knowns as a cascade select box where the first select box choice determines the second select box list of options. You can download the demonstration app  ISIC List  from the Joget Marketplace.

If you are using Database SQL Query to populate the Select Box, Joget will use the field ID/IDs in the "Field ID to control available options based on Grouping" property in the SQL WHERE condition. If you need to pass more than one parameter, use the semicolon character to separate the parameters, for example "location;username". An example of the SQL query is as follows:

SELECT * FROM tableName
WHERE c_location = (?) AND c_username = (?)

When Joget runs the above SQL in the Select Box, it will "plug" in the current Form location value and the username into the respective SQL conditional fields and retrieve the records accordingly.

UI

NameDescription
Size (Rows)

Determines the number of rows of selection to be shown.

This option is useful when multiple selections are expected. An integer value is expected here.

Readonly

Determines if the element is editable.

Display field as Label when readonly?

Displays the value of the element as plain text when an element is set to "Readonly".

Workflow

NameDescription
Workflow Variable

If the form is part of a workflow process, upon saving of the form (by clicking on "Save as Draft" or "Complete" button). The value in this input field will be saved into the corresponding workflow variable named here.

Using a non-existent Workflow Variable name

You will get the following warning with the name printed out (e.g. status) in the server log if you attempt to map to a non-existent Workflow Variable.

context attribute status does not exist in process context - adding new attributes to the process context is not allowed
  • No labels