Class yii\bootstrap5\ButtonDropdown
ButtonDropdown renders a group or split button dropdown bootstrap component.
For example,
// a button group using Dropdown widget
echo ButtonDropdown::widget([
'label' => 'Action',
'dropdown' => [
'items' => [
['label' => 'DropdownA', 'url' => '/'],
['label' => 'DropdownB', 'url' => '#'],
],
],
]);
See also:
Public Properties
Property | Type | Description | Defined By |
---|---|---|---|
$autoIdPrefix | string | The prefix to the automatically generated widget IDs. | yii\base\Widget |
$behaviors | yii\base\Behavior[] | List of behaviors attached to this component. | yii\base\Component |
$buttonOptions | array | The HTML attributes of the button. | yii\bootstrap5\ButtonDropdown |
$clientEvents | array | The event handlers for the underlying Bootstrap JS plugin. | yii\bootstrap5\BootstrapWidgetTrait |
$clientOptions | array|boolean | The options for the underlying Bootstrap JS plugin. | yii\bootstrap5\BootstrapWidgetTrait |
$counter | integer | A counter used to generate $id for widgets. | yii\base\Widget |
$direction | string | The drop-direction of the widget Possible values are 'left', 'right', 'up', or 'down' (default) | yii\bootstrap5\ButtonDropdown |
$dropdown | array | The configuration array for yii\bootstrap5\Dropdown. | yii\bootstrap5\ButtonDropdown |
$dropdownClass | string | Name of a class to use for rendering dropdowns withing this widget. | yii\bootstrap5\ButtonDropdown |
$encodeLabel | boolean | Whether the label should be HTML-encoded. | yii\bootstrap5\ButtonDropdown |
$id | string|null | ID of the widget. Note that the type of this property differs in getter and setter. See getId() and setId() for details. | yii\base\Widget |
$label | string|null | The button label | yii\bootstrap5\ButtonDropdown |
$options | array | The HTML attributes for the container tag. | yii\bootstrap5\ButtonDropdown |
$renderContainer | boolean | Whether to render the container using the $options as HTML attributes. | yii\bootstrap5\ButtonDropdown |
$split | boolean | Whether to display a group of split-styled button group. | yii\bootstrap5\ButtonDropdown |
$stack | yii\base\Widget[] | The widgets that are currently being rendered (not ended). | yii\base\Widget |
$tagName | string | The tag to use to render the button | yii\bootstrap5\ButtonDropdown |
$view | yii\web\View | The view object that can be used to render views or view files. Note that the type of this property differs in getter and setter. See getView() and setView() for details. | yii\base\Widget |
$viewPath | string | The directory containing the view files for this widget. | yii\base\Widget |
Public Methods
Method | Description | Defined By |
---|---|---|
__call() | Calls the named method which is not a class method. | yii\base\Component |
__clone() | This method is called after the object is created by cloning an existing one. | yii\base\Component |
__construct() | Constructor. | yii\base\BaseObject |
__get() | Returns the value of a component property. | yii\base\Component |
__isset() | Checks if a property is set, i.e. defined and not null. | yii\base\Component |
__set() | Sets the value of a component property. | yii\base\Component |
__unset() | Sets a component property to be null. | yii\base\Component |
afterRun() | This method is invoked right after a widget is executed. | yii\base\Widget |
attachBehavior() | Attaches a behavior to this component. | yii\base\Component |
attachBehaviors() | Attaches a list of behaviors to the component. | yii\base\Component |
beforeRun() | This method is invoked right before the widget is executed. | yii\base\Widget |
begin() | Begins a widget. | yii\base\Widget |
behaviors() | Returns a list of behaviors that this component should behave as. | yii\base\Component |
canGetProperty() | Returns a value indicating whether a property can be read. | yii\base\Component |
canSetProperty() | Returns a value indicating whether a property can be set. | yii\base\Component |
className() | Returns the fully qualified name of this class. | yii\base\BaseObject |
detachBehavior() | Detaches a behavior from the component. | yii\base\Component |
detachBehaviors() | Detaches all behaviors from the component. | yii\base\Component |
end() | Ends a widget. | yii\base\Widget |
ensureBehaviors() | Makes sure that the behaviors declared in behaviors() are attached to this component. | yii\base\Component |
getBehavior() | Returns the named behavior object. | yii\base\Component |
getBehaviors() | Returns all behaviors attached to this component. | yii\base\Component |
getId() | Returns the ID of the widget. | yii\base\Widget |
getView() | Returns the view object that can be used to render views or view files. | yii\base\Widget |
getViewPath() | Returns the directory containing the view files for this widget. | yii\base\Widget |
hasEventHandlers() | Returns a value indicating whether there is any handler attached to the named event. | yii\base\Component |
hasMethod() | Returns a value indicating whether a method is defined. | yii\base\Component |
hasProperty() | Returns a value indicating whether a property is defined for this component. | yii\base\Component |
init() | Initializes the widget. | yii\bootstrap5\ButtonDropdown |
off() | Detaches an existing event handler from this component. | yii\base\Component |
on() | Attaches an event handler to an event. | yii\base\Component |
render() | Renders a view. | yii\base\Widget |
renderFile() | Renders a view file. | yii\base\Widget |
run() | Executes the widget. | yii\bootstrap5\ButtonDropdown |
setId() | Sets the ID of the widget. | yii\base\Widget |
setView() | Sets the view object to be used by this widget. | yii\base\Widget |
trigger() | Triggers an event. | yii\base\Component |
widget() | Creates a widget instance and runs it. | yii\base\Widget |
Protected Methods
Method | Description | Defined By |
---|---|---|
registerClientEvents() | Registers JS event handlers that are listed in $clientEvents. | yii\bootstrap5\BootstrapWidgetTrait |
registerPlugin() | Registers a specific Bootstrap plugin and the related events | yii\bootstrap5\BootstrapWidgetTrait |
renderButton() | Generates the button dropdown. | yii\bootstrap5\ButtonDropdown |
renderDropdown() | Generates the dropdown menu. | yii\bootstrap5\ButtonDropdown |
Events
Event | Type | Description | Defined By |
---|---|---|---|
EVENT_AFTER_RUN | yii\base\WidgetEvent | An event raised right after executing a widget. (available since version 2.0.11) | yii\base\Widget |
EVENT_BEFORE_RUN | yii\base\WidgetEvent | An event raised right before executing a widget. (available since version 2.0.11) | yii\base\Widget |
EVENT_INIT | yii\base\Event | An event that is triggered when the widget is initialized via init(). (available since version 2.0.11) | yii\base\Widget |
Constants
Constant | Value | Description | Defined By |
---|---|---|---|
DIRECTION_DOWN | 'down' | The css class part of dropdown | yii\bootstrap5\ButtonDropdown |
DIRECTION_LEFT | 'left' | The css class part of dropleft | yii\bootstrap5\ButtonDropdown |
DIRECTION_RIGHT | 'right' | The css class part of dropright | yii\bootstrap5\ButtonDropdown |
DIRECTION_UP | 'up' | The css class part of dropup | yii\bootstrap5\ButtonDropdown |
Property Details
The HTML attributes of the button.
See also yii\helpers\Html::renderTagAttributes() for details on how attributes are being rendered.
The drop-direction of the widget
Possible values are 'left', 'right', 'up', or 'down' (default)
The configuration array for yii\bootstrap5\Dropdown.
Name of a class to use for rendering dropdowns withing this widget. Defaults to yii\bootstrap5\Dropdown.
Whether the label should be HTML-encoded.
The button label
The HTML attributes for the container tag. The following special options are recognized:
- tag: string, defaults to "div", the name of the container tag.
See also yii\helpers\Html::renderTagAttributes() for details on how attributes are being rendered.
Whether to render the container using the $options as HTML attributes. If set to false
,
the container element enclosing the button and dropdown will NOT be rendered.
Whether to display a group of split-styled button group.
The tag to use to render the button
Method Details
Initializes the widget.
This method will register the bootstrap asset bundle. If you override this method, make sure you call the parent implementation first.
public void init ( ) | ||
throws | yii\base\InvalidConfigException |
---|
Generates the button dropdown.
protected string renderButton ( ) | ||
return | string | The rendering result. |
---|---|---|
throws | Throwable |
Generates the dropdown menu.
protected string renderDropdown ( ) | ||
return | string | The rendering result. |
---|---|---|
throws | Throwable |
Executes the widget.
public string run ( ) | ||
return | string | The rendering result may be directly "echoed" or returned as a string |
---|---|---|
throws | Throwable |