Chips
API reference › Bootstrap 6 › Chips
Renders a Bootstrap chip input: a .chip-input container with the initial chips, a .form-ghost text input and a
hidden input that submits the chip values.
$options applies to the ghost input, so labels target the visible field; the hidden input copies its
disabled and form attributes, so a disabled field submits nothing. The container receives the id
{id}-chips, carries the plugin data-bs-* attributes and the client events. The chips come from the model
attribute or $value (an array, or a string joined by $separator) and are submitted joined by the same
separator, kept in sync by a change.bs.chips listener.
See also: https://getbootstrap.com/docs/6.0/forms/chips/.
Properties
Section titled “Properties”| Property | Type | Description | Defined by |
|---|---|---|---|
$allowDuplicates | bool| | Whether duplicate chip values are allowed, or null for the plugin default (false). Default: null. | Chips |
$attribute | string| | The model attribute that this widget is associated with. Default: null. | yii\ |
$autoIdPrefix static | string | The prefix to the automatically generated widget IDs. Default: 'w'. | yii\ |
$behaviors read-only | array<yii\<static>> | List of behaviors attached to this component. | yii\ |
$clientEvents | array<string, yii\| | Event handlers attached to the widget element, as event name => JavaScript handler source. Default: []. | BootstrapWidgetTrait |
$clientOptions | array<string, | Options passed to the plugin constructor, or false to skip the JavaScript initialization. Default: []. | BootstrapWidgetTrait |
$containerOptions | array<string, | HTML attributes of the .chip-input container. Default: []. | Chips |
$createOnBlur | bool| | Whether to create a chip from the typed text when the input loses focus, or null for the plugin default (true). Default: null. | Chips |
$dismissible | bool| | Whether the plugin adds dismiss buttons to the chips, or null for the plugin default (true). Default: null. | Chips |
$encodeLabels | bool | Whether to HTML-encode the chip labels. Default: true. | Chips |
$field | yii\ | Active input field, which triggers this widget rendering. Default: null. Available since 2.0.11. | yii\ |
$id | string | Id of the widget. | yii\ |
$maxChips | int| | Maximum number of chips, or null for no limit. Default: null. | Chips |
$model | yii\| | The data model that this widget is associated with. Default: null. | yii\ |
$name | string| | The input name. Default: null. | yii\ |
$options | array | The HTML attributes for the input tag. Default: []. | yii\ |
$placeholder | string| | Placeholder of the ghost input, or null for none. Default: null. | Chips |
$separator | string| | Character that creates a chip when typed, '' to disable it, or null for the plugin default (,). Default: null. | Chips |
$value | string | The input value. Default: null. | yii\ |
$view | yii\ | The view object that can be used to render views or view files. | yii\ |
$viewPath read-only | string | The directory containing the view files for this widget. | yii\ |
Methods
Section titled “Methods”| Method | Description | Defined by |
|---|---|---|
__construct() | Constructor. | yii\ |
__call() | Calls the named method which is not a class method. | yii\ |
__clone() | This method is called after the object is created by cloning an existing one. | yii\ |
__get() | Returns the value of a component property. | yii\ |
__isset() | Checks if a property is set, i.e. defined and not null. | yii\ |
__set() | Sets the value of a component property. | yii\ |
__unset() | Sets a component property to be null. | yii\ |
addAttributes() | Adds a set of HTML attributes; attributes already set with the same name are replaced. | AttributesTrait |
addClass() | Adds one or more CSS classes to the existing classes; duplicated classes are collapsed. | AttributesTrait |
addCssStyle() | Adds CSS style properties to the style attribute. | AttributesTrait |
afterRun() | This method is invoked right after a widget is executed. | yii\ |
attachBehavior() | Attaches a behavior to this component. | yii\ |
attachBehaviors() | Attaches a list of behaviors to the component. | yii\ |
attribute() | Sets an HTML attribute value. | AttributesTrait |
beforeRun() | This method is invoked right before the widget is executed. | yii\ |
begin() static | Begins a widget. | yii\ |
behaviors() | Returns a list of behaviors that this component should behave as. | yii\ |
canGetProperty() | Returns a value indicating whether a property can be read. | yii\ |
canSetProperty() | Returns a value indicating whether a property can be set. | yii\ |
class() | Replaces the existing CSS classes with the specified ones. | AttributesTrait |
className() static | Returns the fully qualified name of this class. | yii\ |
detachBehavior() | Detaches a behavior from the component. | yii\ |
detachBehaviors() | Detaches all behaviors from the component. | yii\ |
end() static | Ends a widget. | yii\ |
ensureBehaviors() | Makes sure that the behaviors declared in behaviors() are attached to this component. | yii\ |
getBehavior() | Returns the named behavior object. | yii\ |
getBehaviors() | Returns all behaviors attached to this component. | yii\ |
getId() | Returns the ID of the widget. | yii\ |
getView() | Returns the view object that can be used to render views or view files. | yii\ |
getViewPath() | Returns the directory containing the view files for this widget. | yii\ |
hasEventHandlers() | Returns a value indicating whether there is any handler attached to the named event. | yii\ |
hasMethod() | Returns a value indicating whether a method is defined. | yii\ |
hasProperty() | Returns a value indicating whether a property is defined for this component. | yii\ |
init() | Initializes the widget. | yii\ |
off() | Detaches an existing event handler from this component. | yii\ |
on() | Attaches an event handler to an event. | yii\ |
render() | Renders a view. | yii\ |
renderFile() | Renders a view file. | yii\ |
run() | Chips | |
setId() | Sets the ID of the widget. | yii\ |
setView() | Sets the view object to be used by this widget. | yii\ |
trigger() | Triggers an event. | yii\ |
widget() static | Creates a widget instance and runs it. | yii\ |
hasModel() protected | yii\ | |
pluginInitialization() protected | Returns the JavaScript that initializes a plugin with its normalized constructor options. | BootstrapWidgetTrait |
registerClientEvents() protected | Registers the JavaScript event handlers listed in $clientEvents at View::POS_END. | BootstrapWidgetTrait |
registerPlugin() protected | Registers the plugin asset, the plugin initialization when needed, and the $clientEvents. | BootstrapWidgetTrait |
renderHiddenInput() protected | Renders the hidden input that submits the chip values. | Chips |
renderInputHtml() protected | Render a HTML input tag. | yii\ |
Events
Section titled “Events”| Event | Type | Description | Defined by |
|---|---|---|---|
EVENT_INIT | yii\ | An event that is triggered when the widget is initialized via init(). Event name: 'init'. Available since 2.0.11. | yii\ |
EVENT_BEFORE_RUN | yii\ | An event raised right before executing a widget. Event name: 'beforeRun'. Available since 2.0.11. | yii\ |
EVENT_AFTER_RUN | yii\ | An event raised right after executing a widget. Event name: 'afterRun'. Available since 2.0.11. | yii\ |
Property details
Section titled “Property details”$separator
Section titled “$separator ”public string|null $separator = nullCharacter that creates a chip when typed, '' to disable it, or null for the plugin default (,).
A non-empty separator also joins the submitted values; otherwise they are joined by ,.
Method details
Section titled “Method details”renderHiddenInput()
Section titled “renderHiddenInput() ”protected function renderHiddenInput(string $id, string $value): stringRenders the hidden input that submits the chip values.
The hidden input copies the disabled and form attributes of the ghost input, so a disabled field submits
nothing.
Parameters
| Parameter | Type | Description |
|---|---|---|
$id | string | id of the hidden input. |
$value | string | Chip values joined by the separator. |
Returns
string