当用户点击导航菜单中的链接时,我正在尝试创建一个新窗口。我目前正在尝试做的只是在url中添加一个target =“_ blank”项,从而创建一个全新的页面,从那里我打算学习如何根据我的各种其他需求来改变它。问题是,我无法让目标转到相关链接。
我试过了:
$dropdown->addChild('Text', array('route' =>
'routeName', 'routeParameters' => array('parmName' => 'parameter'),
'attr' => array('target' => '_blank'));
但是上面的结果是没有将_blank添加到任何东西。
$dropdown->addChild('Text', array('route' => 'routeName',
'routeParameters' => array('paramName' => 'parameter')))
->setAttribute('target', '_blank');
将目标设置为li,而不是链接本身,如下所示。
<li target="_blank" class="first"> <a href="routeLink">Text</a>
是否可以直接将属性设置为链接,以便在单击时在新窗口中打开?
非常感谢您提供的任何时间和帮助。
答案 0 :(得分:14)
如果你想用addChild
方法做到这一点,那值多少钱:
$menu->addChild('Homepage', [
'route' => 'homepage',
'linkAttributes' => ['target' => '_blank'],
]);
答案 1 :(得分:11)
如果您使用的是KnpMenuBundle(看起来确实如此) 你可以这样做:
$dropdown->setLinkAttributes(array('target' => '_blank'));