Skip to content

Commit

Permalink
Merge pull request #457 from vonovak/g_select_data_attrs
Browse files Browse the repository at this point in the history
documented data attributes for g:select
  • Loading branch information
graemerocher committed Jun 2, 2016
2 parents df8d827 + 635bdcf commit 50e56f2
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions src/en/ref/Tags/select.gdoc
Original file line number Diff line number Diff line change
Expand Up @@ -54,12 +54,13 @@ Attributes
* @name@ (required) - The name of the select element
* @from@ (required) - The list or range to select from
* @value@ (optional) - The current selected value that evaluates equals() to @true@ for one of the elements in the @from@ list.
* @optionKey@ (optional) - By default @value@ attribute of each @<option>@ element will be the result of a @toString()@ call on each element. Setting this allows the value to be a bean property of each element in the list.
* @optionValue@ (optional) - By default the body of each @<option>@ element will be the result of a @toString()@ call on each element in the @from@ attribute list. Setting this allows the value to be a bean property of each element in the list.
* @optionKey@ (optional) - By default, the @value@ attribute of each @<option>@ element will be the result of a @toString()@ call on each element. Setting this allows the value to be a bean property of each element in the list.
* @optionValue@ (optional) - By default, the body of each @<option>@ element will be the result of a @toString()@ call on each element in the @from@ attribute list. Setting this allows the value to be a bean property of each element in the list.
* @keys@ (optional) - A list of values to be used for the value attribute of each @option@ element.
* @noSelection@ (optional) - A single-entry Map detailing the key and value to use for the "no selection made" choice in the select box. If there is no current selection this will be shown as it is first in the list, and if submitted with this selected, the key that you provide will be submitted. Typically this will be blank - but you can also use 'null' in the case that you're passing the ID of an object
* @valueMessagePrefix@ (Optional) - By default the value of the @option@ element will be the result of a @toString()@ call on each element in the @from@ attribute list. Setting this allows the value to be resolved from the i18n messages. The @valueMessagePrefix@ will be suffixed with a dot ('.') and then the value attribute of the option to resolve the message. If the message could not be resolved, the value is presented.
* @valueMessagePrefix@ (Optional) - By default, the value of the @option@ element will be the result of a @toString()@ call on each element in the @from@ attribute list. Setting this allows the value to be resolved from the i18n messages. The @valueMessagePrefix@ will be suffixed with a dot ('.') and then the value attribute of the option to resolve the message. If the message could not be resolved, the value is presented.
* @multiple@ (optional) - Set to @true@ to generate a multi-select listbox rather than a dropdown list.
* @dataAttrs@ (optional) - a Map that adds @"data-\*@ attributes to the @<option>@ elements. Map's keys will be used as names of the @data-\*@ attributes like so: @data-${key}="value V"@ (i.e. with a "data-" prefix). The object belonging to a key determines the value V of the @data-\*@ attribute. It can be a string referring to a property of beans in @from@, a Closure that accepts an item from @from@ and returns the value, or a List that contains a value for each of the @<option>@s.

The @optionKey@ and @optionValue@ attribute of the @<g:select>@ tag deserve special mention as these let you control what is displayed to the user within the resulting @<select>@ tag and also the value which is submitted in a form submission. The default behaviour is to call @toString()@ on each element in the @from@ attribute, but for example if you had a list of @Book@ domain classes this may not be useful behaviour.

Expand Down

0 comments on commit 50e56f2

Please sign in to comment.