У меня есть проблема, и я не мог ее решить …
макеты / main.php
<div id='cssmenu'>
<?php
$menular = Yii::app()->db->createCommand()
->select('m.idmenu, m.menuparent_id, m.url, m.title_'.Yii::app()->language)
->from ('menu m')
->where('m.menuparent_id=0 and m.active="1"')
->order('m.idmenu asc')->queryAll();
echo "<ul>";
foreach($menular as $menu){
if($menu['url'] == '#')
$echoUrl = 'javascript:void(0);';
else
$echoUrl = $baseUrl.'/'.Yii::app()->language.$menu["url"];
echo "<li class=''>";
echo "<a href='".$echoUrl."' title='".$menu['title_'.Yii::app()->language]."'>".$menu['title_'.Yii::app()->language]."</a>";
echo "</li>";
}
echo "</ul>";
?>
</div>
В этом сцена сценарий не назначен active
класс для li
..
Поэтому, пожалуйста, помогите мне решить эту проблему.
Я думаю, что могу объяснить, в чем проблема.
Благодарю.
P.S: css
а также script
коды совпадают с моими файл макета.
Вы можете использовать одну из следующих опций, чтобы подтвердить, что это за действие ИЛИ контроллера, затем вы можете назначить активный класс меню, если он принадлежит загруженной странице.
Получить контроллер, который вызывается
Yii::app()->controller->id
Проверьте действие, которое вызывается.
Yii::app()->controller->route
Например, если вы хотите назначить активный класс «насчет нас» страница и она вызывается с сайта / о потом
$active = Yii::app()->controller->route == "site/about" ? "active" : "";
echo "<li class='".$active."'>";
Других решений пока нет …