controlGroup() public static method

Generates a form group.
public static controlGroup ( string $type, string $name, string $value = '', array $htmlOptions = [], array $data = [] ) : string
$type string the input type.
$name string the input name.
$value string the input value.
$htmlOptions array additional HTML attributes.
$data array data for multiple select inputs.
return string the generated control group.
Example #1
0
 public function testControlGroup()
 {
     $I = $this->codeGuy;
     $html = TbHtml::controlGroup(TbHtml::INPUT_TYPE_TEXT, 'text', '', array('color' => TbHtml::INPUT_COLOR_SUCCESS, 'groupOptions' => array('class' => 'group'), 'label' => 'Label text', 'labelOptions' => array('class' => 'label'), 'help' => 'Help text', 'helpOptions' => array('class' => 'help')));
     $group = $I->createNode($html, 'div.control-group');
     $I->seeNodeCssClass($group, 'success group');
     $I->seeNodeChildren($group, array('label.control-label', 'div.controls'));
     $label = $group->filter('label.control-label');
     $I->seeNodeCssClass($label, 'label');
     $I->seeNodeAttribute($label, 'for', 'text');
     $I->seeNodeText($label, 'Label text');
     $controls = $group->filter('div.controls');
     $I->seeNodeChildren($controls, array('input', 'span'));
     $input = $controls->filter('input[type=text]');
     $I->seeNodeAttributes($input, array('id' => 'text', 'name' => 'text', 'value' => ''));
     $help = $controls->filter('span.help-inline');
     $I->seeNodeCssClass($help, 'help');
     $I->seeNodeText($help, 'Help text');
     $html = TbHtml::controlGroup(TbHtml::INPUT_TYPE_RADIOBUTTON, 'radio', true, array('label' => 'Label text'));
     $group = $I->createNode($html, 'div.control-group');
     $I->seeNodeChildren($group, array('div.controls'));
     $controls = $group->filter('div.controls');
     $label = $controls->filter('label.radio');
     $I->seeNodePattern($label, '/> Label text$/');
     $radio = $label->filter('input[type=radio]');
     $I->seeNodeAttributes($radio, array('checked' => 'checked', 'id' => 'radio', 'name' => 'radio', 'value' => '1'));
 }