Back
selectTag()
Builds an HTML <select> element using a name and a set of options. Unlike select(), it does not require a model object and is not bound to a property. It is useful for standalone select controls or when you want full manual control over the field.
Note: Pass any additional arguments like class
, rel
, and id
, and the generated tag will also include those values as HTML attributes.
Name | Type | Required | Default | Description |
---|---|---|---|---|
name | string | Yes | Name to populate in tag's name attribute. | |
options | any | Yes | A collection to populate the select form control with. Can be a query recordset or an array of objects. | |
selected | string | No | Value of option that should be selected by default. | |
includeBlank | any | No | false | Whether to include a blank option in the select form control. Pass true to include a blank line or a string that should represent what display text should appear for the empty value (for example, "- Select One -"). |
multiple | boolean | No | false | Whether to allow multiple selection of options in the select form control. |
valueField | string | No |
The column or property to use for the value of each list element. Used only when a query or array of objects has been supplied in the options argument. Required when specifying textField
|
|
textField | string | No |
The column or property to use for the value of each list element that the end user will see. Used only when a query or array of objects has been supplied in the options argument. Required when specifying valueField
|
|
label | string | No | The label text to use in the form control. | |
labelPlacement | string | No | around | Whether to place the label before, after, or wrapped around the form control. Label text placement can be controlled using aroundLeft or aroundRight. |
prepend | string | No | String to prepend to the form control. Useful to wrap the form control with HTML tags. | |
append | string | No | String to append to the form control. Useful to wrap the form control with HTML tags. | |
prependToLabel | string | No | String to prepend to the form control's label. Useful to wrap the form control with HTML tags. | |
appendToLabel | string | No | String to append to the form control's label. Useful to wrap the form control with HTML tags. | |
encode | any | No | true |
Use this argument to decide whether the output of the function should be encoded in order to prevent Cross Site Scripting (XSS) attacks. Set it to true to encode all relevant output for the specific HTML element in question (e.g. tag content, attribute values, and URLs). For HTML elements that have both tag content and attribute values you can set this argument to attributes to only encode attribute values and not tag content.
|
1. Basic selectTag with a query
cities = model("city").findAll();
<!--- View code --->
#selectTag(name="cityId", options=cities)#
2. SelectTag with valueField and textField
selectTag(
name="cityId",
options=cities,
valueField="id",
textField="name"
)
3. Including a blank option
selectTag(
name="cityId",
options=cities,
valueField="id",
textField="name",
includeBlank="- Select a City -"
)
4. Multiple selection
selectTag(
name="cityIds",
options=cities,
valueField="id",
textField="name",
multiple=true
)
5. Custom label and HTML wrapping
selectTag(
name="cityId",
options=cities,
valueField="id",
textField="name",
label="Choose a City",
labelPlacement="before",
prepend="<div class='input-group'>",
append="</div>"
)
Copied!