Class yii\bootstrap4\Tabs
Tabs renders a Tab bootstrap javascript component.
For example:
echo Tabs::widget([
'items' => [
[
'label' => 'One',
'content' => 'Anim pariatur cliche...',
'active' => true
],
[
'label' => 'Two',
'content' => 'Anim pariatur cliche...',
'headerOptions' => [...],
'options' => ['id' => 'myveryownID'],
],
[
'label' => 'Example',
'url' => 'http://www.example.com',
],
[
'label' => 'Dropdown',
'items' => [
[
'label' => 'DropdownA',
'content' => 'DropdownA, Anim pariatur cliche...',
],
[
'label' => 'DropdownB',
'content' => 'DropdownB, Anim pariatur cliche...',
],
[
'label' => 'External Link',
'url' => 'http://www.example.com',
],
],
],
],
]);
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 |
$clientEvents | array | The event handlers for the underlying Bootstrap JS plugin. | yii\bootstrap4\BootstrapWidgetTrait |
$clientOptions | array | The options for the underlying Bootstrap JS plugin. | yii\bootstrap4\BootstrapWidgetTrait |
$counter | integer | A counter used to generate $id for widgets. | yii\base\Widget |
$dropdownClass | string | Name of a class to use for rendering dropdowns withing this widget. | yii\bootstrap4\Tabs |
$encodeLabels | boolean | Whether the labels for header items should be HTML-encoded. | yii\bootstrap4\Tabs |
$headerOptions | array | List of HTML attributes for the header container tags. | yii\bootstrap4\Tabs |
$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 |
$itemOptions | array | List of HTML attributes for the item container tags. | yii\bootstrap4\Tabs |
$items | array | List of tabs in the tabs widget. | yii\bootstrap4\Tabs |
$linkOptions | array | List of HTML attributes for the tab header link tags. | yii\bootstrap4\Tabs |
$navType | string | Specifies the Bootstrap tab styling. | yii\bootstrap4\Tabs |
$options | array | The HTML attributes for the widget container tag. | yii\bootstrap4\Widget |
$renderTabContent | boolean | Whether to render the tab-content container and its content. |
yii\bootstrap4\Tabs |
$stack | yii\base\Widget[] | The widgets that are currently being rendered (not ended). | yii\base\Widget |
$tabContentOptions | array | List of HTML attributes for the tab-content container. |
yii\bootstrap4\Tabs |
$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 |
Protected Properties
Property | Type | Description | Defined By |
---|---|---|---|
$panes | array | Tab panes (contents) | yii\bootstrap4\Tabs |
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() | yii\bootstrap4\BootstrapWidgetTrait | |
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\bootstrap4\Tabs |
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 |
renderPanes() | Renders tab panes. | yii\bootstrap4\Tabs |
run() | Executes the widget. | yii\bootstrap4\Tabs |
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 |
---|---|---|
activateFirstVisibleTab() | Sets the first visible tab as active. | yii\bootstrap4\Tabs |
hasActiveTab() | yii\bootstrap4\Tabs | |
prepareItems() | Renders tab items as specified on $items. | yii\bootstrap4\Tabs |
registerClientEvents() | Registers JS event handlers that are listed in $clientEvents. | yii\bootstrap4\BootstrapWidgetTrait |
registerPlugin() | Registers a specific Bootstrap plugin and the related events | yii\bootstrap4\BootstrapWidgetTrait |
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 |
Property Details
Name of a class to use for rendering dropdowns withing this widget. Defaults to yii\bootstrap4\Dropdown.
Whether the labels for header items should be HTML-encoded.
List of HTML attributes for the header container tags. This will be overwritten by the "headerOptions" set in individual $items.
See also yii\helpers\Html::renderTagAttributes() for details on how attributes are being rendered.
List of HTML attributes for the item container tags. This will be overwritten by the "options" set in individual $items. The following special options are recognized:
- tag: string, defaults to "div", the tag name of the item container tags.
See also yii\helpers\Html::renderTagAttributes() for details on how attributes are being rendered.
List of tabs in the tabs widget. Each array element represents a single tab with the following structure:
- label: string, required, the tab header label.
- encode: bool, optional, whether this label should be HTML-encoded. This param will override
global
$this->encodeLabels
param. - headerOptions: array, optional, the HTML attributes of the tab header.
- linkOptions: array, optional, the HTML attributes of the tab header link tags.
- content: string, optional, the content (HTML) of the tab pane.
- url: string, optional, an external URL. When this is specified, clicking on this tab will bring the browser to this URL. This option is available since version 2.0.4.
- options: array, optional, the HTML attributes of the tab pane container.
- active: bool, optional, whether this item tab header and pane should be active. If no item is marked as 'active' explicitly - the first one will be activated.
- visible: bool, optional, whether the item tab header and pane should be visible or not. Defaults to true.
- disabled: bool, optional, whether the item tab header and pane should be disabled or not. Defaults to false.
- items: array, optional, can be used instead of
content
to specify a dropdown items configuration array. Each item can hold three extra keys, besides the above ones:- active: bool, optional, whether the item tab header and pane should be visible or not.
- content: string, required if
items
is not set. The content (HTML) of the tab pane. - options: optional, array, the HTML attributes of the tab content container.
List of HTML attributes for the tab header link tags. This will be overwritten by the "linkOptions" set in individual $items.
See also yii\helpers\Html::renderTagAttributes() for details on how attributes are being rendered.
Specifies the Bootstrap tab styling.
Tab panes (contents)
Whether to render the tab-content
container and its content. You may set this property
to be false so that you can manually render tab-content
yourself in case your tab contents are complex.
List of HTML attributes for the tab-content
container. This will always contain the CSS class tab-content
.
See also yii\helpers\Html::renderTagAttributes() for details on how attributes are being rendered.
Method Details
Sets the first visible tab as active.
This method activates the first tab that is visible and
not explicitly set to inactive ('active' => false
).
protected void activateFirstVisibleTab ( ) |
protected boolean hasActiveTab ( ) | ||
return | boolean | If there's active tab defined |
---|
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 ( ) |
Renders tab items as specified on $items.
protected void prepareItems ( &$items, $prefix = '' ) | ||
$items | array | |
$prefix | string | |
throws | yii\base\InvalidConfigException |
---|
Renders tab panes.
public string renderPanes ( $panes ) | ||
$panes | array | |
return | string | The rendering result. |
---|
Executes the widget.
public string|void run ( ) | ||
return | string|void | The rendering result may be directly "echoed" or returned as a string |
---|---|---|
throws | yii\base\InvalidConfigException | |
throws | Exception |