2012-09-24 94 views
3

我是Yii框架的新手,我試圖訪問小部件的屬性讓我們說CMenu我想更改一些公共屬性的值,如activeCssClass ,firstItemCssClass,lastItemCssClass,htmlOptions等,那麼如何在Yii中更改小部件的屬性。我使用Yii版本1.1.12(2012年8月19日),我試圖生成一個多級菜單,但我需要更改一些公共類參數的值,我不知道怎麼樣?如何訪問小部件的屬性

回答

2

那麼,通常你在調用widget時應用所需的值。您可以在小部件類名稱後面的小部件調用中將它們設置爲適當的數組

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

但是!如果你想你創建了一些小部件後應用價值,但沒有渲染它,但(真極少數情況下),你可以做這件事:

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

添加在前面的答案,如果你錯過了,唐忘記檢查簡短的official documentation就可以了。