Установка атрибутов виджетов в Yii Bootstrap

Я только начал с фреймворка Yii, используя тему начальной загрузки; все замечательно, за исключением того, что я не могу найти способ именования атрибутов в виджетах начальной загрузки. Например, на сайте есть кнопка чата, как я могу получить к ней доступ jQuery('#id')?

Я попытался добавить в id атрибут того же массива следующим образом:

<?php $this->widget('bootstrap.widgets.TbButton',array(
    'buttonType'=>'link',
    'icon' => 'icon-user icon-white',
    'type'=>'info',
    'label'=>'Live chat',
    'url'=>'javascript:switchChat();',
    'id'=>'chatPopup'
    )); ?>

Хорошо, после небольшой царапины я узнал о массиве htmlOptions и itemOptions:)

ОК, наконец, добрался

        'class'=>'bootstrap.widgets.TbMenu',
        'items'=>array(
            array('label'=>'Home', 'url'=>array('/site/index')),
            array('label'=>'Messages ()',
                  'url'=>array('/site/messages'),
                  'visible'=>!Yii::app()->user->isGuest,
                  'itemOptions'=>array('class'=>'msgcnt'),
            ),

Но это не создает для меня атрибутов, кроме стандартного URL, типа и т. Д.

Таким образом, единственный способ, которым я в настоящее время могу это сделать, это разместить виджеты внутри div обертки с идентификаторами, но как мне быть с теми виджетами, где div недопустимо, например, в случае с навигационной панелью?

1 ответ

Решение

Вы можете установить атрибуты через htmlOptions имущество:

<?php $this->widget('bootstrap.widgets.TbButton',array(
    // ..
    'htmlOptions' => array(
        'id' => 'myid',
    ),
));?>
Другие вопросы по тегам