diff options
author | Derek Jones <derek.jones@ellislab.com> | 2009-04-08 18:14:17 +0200 |
---|---|---|
committer | Derek Jones <derek.jones@ellislab.com> | 2009-04-08 18:14:17 +0200 |
commit | 26399298164f1fb6eaa4764b543b876766dacf0a (patch) | |
tree | baa727ad02f67946125dd0392463b23c704f376e | |
parent | 57fe41072c9d97d3cba2cd5faef529ac94571bfb (diff) |
added form_multiselect() to form helper to make it easier to create multiselect fields, and to make it a bit more semantically correct to boot
-rw-r--r-- | system/helpers/form_helper.php | 25 | ||||
-rw-r--r-- | user_guide/changelog.html | 1 | ||||
-rw-r--r-- | user_guide/helpers/form_helper.html | 8 |
3 files changed, 34 insertions, 0 deletions
diff --git a/system/helpers/form_helper.php b/system/helpers/form_helper.php index 0173340c5..4716e4975 100644 --- a/system/helpers/form_helper.php +++ b/system/helpers/form_helper.php @@ -247,6 +247,31 @@ if ( ! function_exists('form_textarea')) // ------------------------------------------------------------------------ /** + * Multi-select menu + * + * @access public + * @param string + * @param array + * @param mixed + * @param string + * @return type + */ +if (! function_exists('form_multiselect')) +{ + function form_multiselect($name = '', $options = array(), $selected = array(), $extra = '') + { + if ( ! strpos($extra, 'multiple')) + { + $extra .= ' multiple="multiple"'; + } + + return form_dropdown($name, $options, $selected, $extra); + } +} + +// -------------------------------------------------------------------- + +/** * Drop-down Menu * * @access public diff --git a/user_guide/changelog.html b/user_guide/changelog.html index e4d57f6b1..b5d3fe7d9 100644 --- a/user_guide/changelog.html +++ b/user_guide/changelog.html @@ -79,6 +79,7 @@ SVN Revision: </p> </li> <li>Helpers <ul> + <li>Added <kbd>form_multiselect()</kbd> to the <a href="helpers/form_helper.html">Form helper</a>.</li> <li>Modified <kbd>form_hidden()</kbd> in the <a href="helpers/form_helper.html">Form helper</a> to accept multi-dimensional arrays.</li> </ul> </li> diff --git a/user_guide/helpers/form_helper.html b/user_guide/helpers/form_helper.html index 1958721c0..6f17a6bba 100644 --- a/user_guide/helpers/form_helper.html +++ b/user_guide/helpers/form_helper.html @@ -241,6 +241,14 @@ echo form_dropdown('shirts', $options, 'large', $js);</code> <p>If the array passed as $options is a multidimensional array, form_dropdown() will produce an <optgroup> with the array key as the label.</p> +<h2>form_multiselect()</h2> + +<p>Lets you create a standard multiselect field. The first parameter will contain the name of the field, +the second parameter will contain an associative array of options, and the third parameter will contain the +value or values you wish to be selected. The parameter usage is identical to using <kbd>form_dropdown()</kbd> above, +except of course that the name of the field will need to use POST array syntax, e.g. <samp>foo[]</samp>.</p> + + <h2>form_fieldset()</h2> <p>Lets you generate fieldset/legend fields.</p> |