在Yii Bootstrap中设置小部件属性

use*_*697 2 yii twitter-bootstrap yii-behaviour

我刚开始使用引导主题的Yii框架; 一切都很棒,除了我找不到在bootstrap小部件中命名属性的方法.例如网站有一个聊天按钮,我该如何访问它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'
    )); ?>
Run Code Online (Sandbox Code Playgroud)

好吧,经过小脑袋刮伤后我发现了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'),
            ),
Run Code Online (Sandbox Code Playgroud)

但这不会为我生成属性,除了标准网址,类型等.

因此,我目前能够做到这一点的唯一方法是将小部件放在div带有id的包装器中,但是我如何处理那些div不可接受的小部件,例如在导航栏的情况下?

Mic*_*rtl 6

您可以通过htmlOptions属性设置属性:

<?php $this->widget('bootstrap.widgets.TbButton',array(
    // ..
    'htmlOptions' => array(
        'id' => 'myid',
    ),
));?>
Run Code Online (Sandbox Code Playgroud)