Input widget class for generating multiple checkboxes.
This class is usually used internally by Cake\View\Helper\FormHelper
, it but can be used to generate standalone multiple checkboxes.
string|null
Prefix for id attribute.
string[]
A list of id suffixes used in the current rendering.
\Cake\View\Widget\LabelWidget
Label widget instance.
\Cake\View\StringTemplate
StringTemplate instance.
array
Data defaults.
__construct(\Cake\View\StringTemplate $templates, \Cake\View\Widget\LabelWidget $label)
Render multi-checkbox widget.
This class uses the following templates:
checkbox
Renders checkbox input controls. Accepts the name
, value
and attrs
variables.checkboxWrapper
Renders the containing div/element for a checkbox and its label. Accepts the input
, and label
variables.multicheckboxWrapper
Renders a wrapper around grouped inputs.multicheckboxTitle
Renders the title element for grouped inputs.\Cake\View\StringTemplate
$templates Templates list.
\Cake\View\Widget\LabelWidget
$label Label widget instance.
_clearIds()
Clear the stored ID suffixes.
_domId(string $value)
Generate an ID suitable for use in an ID attribute.
string
$value The value to convert into an ID.
string
The generated id.
_id(string $name, string $val)
Generate an ID attribute for an element.
Ensures that id's for a given set of fields are unique.
string
$name The ID attribute name.
string
$val The ID attribute value.
string
Generated id.
_idSuffix(string $val)
Generate an ID suffix.
Ensures that id's for a given set of fields are unique.
string
$val The ID attribute value.
string
Generated id suffix.
_isDisabled(string $key, mixed $disabled)
Helper method for deciding what options are disabled.
string
$key The key to test.
mixed
$disabled The disabled values.
bool
_isSelected(string $key, mixed $selected)
Helper method for deciding what options are selected.
string
$key The key to test.
array|string|null
$selected The selected values.
bool
_renderInput(array $checkbox, \Cake\View\Form\ContextInterface $context)
Render a single checkbox & wrapper.
array
$checkbox An array containing checkbox key/value option pairs
\Cake\View\Form\ContextInterface
$context Context object.
string
_renderInputs(array $data, \Cake\View\Form\ContextInterface $context)
Render the checkbox inputs.
array
$data The data array defining the checkboxes.
\Cake\View\Form\ContextInterface
$context The current form context.
string[]
An array of rendered inputs.
mergeDefaults(array $data, \Cake\View\Form\ContextInterface $context)
Merge default values with supplied data.
array
$data Data array
\Cake\View\Form\ContextInterface
$context Context instance.
array
Updated data array.
render(array $data, \Cake\View\Form\ContextInterface $context)
Render multi-checkbox widget.
Data supports the following options.
name
The name attribute of the inputs to create. []
will be appended to the name.options
An array of options to create checkboxes out of.val
Either a string/integer or array of values that should be checked. Can also be a complex options set.disabled
Either a boolean or an array of checkboxes to disable.escape
Set to false to disable HTML escaping.options
An associative array of value=>labels to generate options for.idPrefix
Prefix for generated ID attributes.The options option can take a variety of data format depending on the complexity of HTML you want generated.
You can generate simple options using a basic associative array:
'options' => ['elk' => 'Elk', 'beaver' => 'Beaver']
If you need to define additional attributes on your option elements you can use the complex form for options:
'options' => [ ['value' => 'elk', 'text' => 'Elk', 'data-foo' => 'bar'], ]
This form requires that both the value
and text
keys be defined. If either is not set options will not be generated correctly.
array
$data The data to generate a checkbox set with.
\Cake\View\Form\ContextInterface
$context The current form context.
string
secureFields(array $data)
Returns a list of fields that need to be secured for this widget.
array
$data The data to render.
string[]
Array of fields to secure.
setMaxLength(array $data, \Cake\View\Form\ContextInterface $context, string $fieldName)
Set value for "maxlength" attribute if applicable.
array
$data Data array
\Cake\View\Form\ContextInterface
$context Context instance.
string
$fieldName Field name.
array
Updated data array.
setRequired(array $data, \Cake\View\Form\ContextInterface $context, string $fieldName)
Set value for "required" attribute if applicable.
array
$data Data array
\Cake\View\Form\ContextInterface
$context Context instance.
string
$fieldName Field name.
array
Updated data array.
setStep(array $data, \Cake\View\Form\ContextInterface $context, string $fieldName)
Set value for "step" attribute if applicable.
array
$data Data array
\Cake\View\Form\ContextInterface
$context Context instance.
string
$fieldName Field name.
array
Updated data array.
Prefix for id attribute.
string|null
A list of id suffixes used in the current rendering.
string[]
Label widget instance.
\Cake\View\Widget\LabelWidget
StringTemplate instance.
\Cake\View\StringTemplate
Data defaults.
array
© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.1/class-Cake.View.Widget.MultiCheckboxWidget.html