【问题标题】:Unable to Highlight/activate menu bar items for static page urls in yii2无法突出显示/激活 yii2 中静态页面 url 的菜单栏项
【发布时间】:2015-06-01 09:07:23
【问题描述】:

我正在使用基本的 Yii2 应用程序。我正在使用导航栏小部件并且在突出显示当前菜单项时遇到问题。我的问题是导航栏项目在其 url 值中有静态页面时没有被激活。例如,当单击domain_name/site/contact 时,它会突出显示导航栏项“联系我们”,因为它正在调用控制器操作,而当我呈现静态页面并使用 URL 作为domain_name/site/page?view=about/about_us 时,父项“关于”和子项“关于我们”没有被突出显示/激活。找不到可能的解决方案。

我使用的代码如下

[
     'label' => 'About',
     'items' => [
         ['label' => 'About College', 'url' => ['/site/page?view=about/about_us']],                                           
     ],
],

联系我们

['label' => 'Contact Us', 'url' => ['/site/contact']],

【问题讨论】:

  • 对不起@arogachev ...我已经看到了这个问题,这不是我要问的。我已经解决了。感谢您的回复。
  • 您可以将此解决方案作为答案发布。

标签: yii2 navbar


【解决方案1】:

我在我使用的导航小部件中使用了以下解决方法

    'activateItems'=>'true',
    'activateParents'=>'true',

对于物品

    ['label' => 'About',
                 'items'=>[
                    ['label' => 'About College', 'url' => ['/site/page?view=about/about_us'],'active'=>Yii::$app->request->getUrl() == Url::toRoute(['/site/page?view=about/about_us'])],],],

【讨论】:

  • 那么为什么提到的答案是“不是你要问的”?您需要使用active 属性并自定义检查以满足您的需求。另外我不建议以这种方式检查当前网址。
  • @arogachev ...如果您能提出可能的解决方案,这将非常有帮助。提前致谢
猜你喜欢
  • 2014-10-25
  • 2014-09-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-12
相关资源
最近更新 更多