有没有办法如何推入zend_navigation页面类型mvc或uri并给它onclick属性?
array (
'type' => 'uri',
'label' => 'Map',
'title' => 'Map',
'uri' => '#',
'click' => 'alert("show map");' )
我有子子菜单包括仅触发模态的链接。直到我使用我自己的“导航”解决方案,但我想使用zend的。
感谢
答案 0 :(得分:0)
我应该提一下,我知道简单的解决方法 - 有一些onload javascript函数,根据他们的id将事件附加到某个菜单,但我只想保持简单并在一个地方保持整个菜单定义。
答案 1 :(得分:0)
您可以编写自己的菜单助手,而不是 Navigation_Menu 帮助。
扩展的主要方法是 htmlify :
class MyApp_View_Helper_MyMenu extends Zend_View_Helper_Navigation_Menu
{
public function htmlify(Zend_Navigation_Page $page)
{
// ... put original code here ...
// get attribs for element
$attribs = array(
'id' => $page->getId(),
'title' => $title,
'class' => $page->getClass()
);
// does page have a href?
if ($href = $page->getHref()) {
$element = 'a';
$attribs['href'] = $href;
$attribs['target'] = $page->getTarget();
$attribs['onclick'] = $page->getClick(); // the click attribute
} else {
$element = 'span';
}
return '<' . $element . $this->_htmlAttribs($attribs) . '>'
. $this->view->escape($label)
. '</' . $element . '>';
}
}
然后,通过以下方式致电您的助手:
<?php echo $this->navigation()->myMenu(); ?>
请在此处查看完整示例:Getting Zend_Navigation menu to work with jQuery's Fisheye