如何访问窗口小部件的属性

时间:2012-09-24 22:57:44

标签: php yii properties widget

我是Yii框架的新手,我正在尝试访问一个小部件的属性,让我们说CMenu,我想改变一些公共属性的值,如activeCssClass,firstItemCssClass,lastItemCssClass,htmlOptions等。所以你如何在Yii中更改小部件的属性。

详细说明: 我正在使用Yii版本1.1。12(2012年8月19日),我正在尝试生成一个多级菜单,但我需要更改一些公共类参数的值,我不知道怎么做?

2 个答案:

答案 0 :(得分:2)

好吧,通常在调用窗口小部件时应用所需的值。您可以在窗口小部件类名称之后的窗口小部件调用中的适当数组中设置它们。

$this->widget('zii.widgets.CMenu',
    array(
        'items' => $items,
        'id' => 'main_menu',
        'htmlOptions' => array('class' => 'nav'),
        'activeCssClass' => 'active',
        'firstItemCssClass' => 'first_item'
    )
);

BUT!如果你想在创建一些小部件之后应用这些值,但还没有渲染它(非常罕见的情况)你可以做这件事:

$widget = $this->beginWidget('application.components.MyOwnWidget');
$widget->public_property = 'aaa';
$widget->renderSomething();
$this->endWidget();

答案 1 :(得分:0)

添加上一个答案,如果您错过了,请不要忘记查看简短的official documentation