我根据我的主题设计我的CMenu。以下是我的代码。
<!-- Navigation -->
<nav id="nav">
<ul id="navlist" class="sf-menu clearfix">
<?php
$this->widget('zii.widgets.CMenu',array(
'items'=>array(
array('label'=>'Contact', 'url'=>array('/site/contact')),
array('label'=>'Registration','url'=>array('/registration'),
'items'=>array(
array('label'=>'Registration','url'=>array('/registration')),
array('label'=>'Abc Registration','url'=>array('/registration/abc')),
),'visible'=>Yii::app()->user->isGuest),
array('label'=>'Login', 'url'=>array('/user/user/login'), 'visible'=>Yii::app()->user->isGuest),
array('label'=>'Logout ('.Yii::app()->user->name.')', 'url'=>array('/site/logout'), 'visible'=>!Yii::app()->user->isGuest)
),
));
?>
</ul>
</nav>
生成的html如下所示
<!-- Navigation -->
<nav id="nav">
<ul id="navlist" class="sf-menu clearfix">
<ul id="yw1">
<li><a href="/mysite/site/contact">Contact</a></li>
<li><a href="/mysite/registration">Registration</a>
<ul>
<li><a href="/mysite/registration">Registration</a></li>
<li><a href="/mysite/registration/abc">Abc Registration</a></li>
</ul>
</li>
<li><a href="/mysite/user/user/login">Login</a></li>
</ul>
</ul>
</nav>
<!-- Navigation -->
问题是Yii生成的id是yw1..i想要将其更改为'navlist'。如何自定义CMenu?
修改
我也试过在html选项中设置css类。但它只是设置类,而不是Id。所以它只给出相同的结果。
答案 0 :(得分:10)
CMenu
延伸CWidget
。使用CWidget.id
:
<?php
$this->widget('zii.widgets.CMenu',array(
'id'=> 'navlist',
'items'=>array(
...
答案 1 :(得分:5)
只需在您的小部件中添加id
属性
$this->widget('zii.widgets.CMenu',array(
'id'=> 'navlist',
我不确定但是试试这个
array('label'=>'Item1', 'url'=>"#",
'linkOptions'=>array('id'=>'myId1'),
'submenuOptions'=>array('id'=>'myId'),