Browse Source

Merge pull request #1601 from omnilight/improving-buttondropdown

Added support for tagName and encodeLabel parameters in ButtonDropdown
tags/2.0.0-beta
Qiang Xue 11 years ago
parent
commit
59f6b7fcf0
  1. 14
      extensions/yii/bootstrap/ButtonDropdown.php
  2. 1
      extensions/yii/bootstrap/CHANGELOG.md

14
extensions/yii/bootstrap/ButtonDropdown.php

@ -49,6 +49,14 @@ class ButtonDropdown extends Widget
* @var boolean whether to display a group of split-styled button group.
*/
public $split = false;
/**
* @var string the tag to use to render the button
*/
public $tagName = 'button';
/**
* @var boolean whether the label should be HTML-encoded.
*/
public $encodeLabel = true;
/**
@ -68,7 +76,6 @@ class ButtonDropdown extends Widget
{
Html::addCssClass($this->options, 'btn');
if ($this->split) {
$tag = 'button';
$options = $this->options;
$this->options['data-toggle'] = 'dropdown';
Html::addCssClass($this->options, 'dropdown-toggle');
@ -78,7 +85,6 @@ class ButtonDropdown extends Widget
'options' => $this->options,
]);
} else {
$tag = 'a';
$this->label .= ' <span class="caret"></span>';
$options = $this->options;
if (!isset($options['href'])) {
@ -89,10 +95,10 @@ class ButtonDropdown extends Widget
$splitButton = '';
}
return Button::widget([
'tagName' => $tag,
'tagName' => $this->tagName,
'label' => $this->label,
'options' => $options,
'encodeLabel' => false,
'encodeLabel' => $this->encodeLabel,
]) . "\n" . $splitButton;
}

1
extensions/yii/bootstrap/CHANGELOG.md

@ -7,6 +7,7 @@ Yii Framework 2 bootstrap extension Change Log
- Enh #1474: Added option to make NavBar 100% width (cebe)
- Enh #1553: Only add navbar-default class to NavBar when no other class is specified (cebe)
- Bug #1459: Update Collapse to use bootstrap 3 classes (tonydspaniard)
- Enh: Added support for tagName and encodeLabel parameters in ButtonDropdown (omnilight)
2.0.0 alpha, December 1, 2013
-----------------------------

Loading…
Cancel
Save