Intereting Posts
Результаты поиска Mysql для похожих звуков mysql (i) _real_escape_string, на что можно положиться? Переопределение адреса Paypal не работает Использование DLL с PHP для чайников INSERT INTO … ON DUPLICATE UPDATE все значения MYSQLI – WHERE IN array Как сохранить PNG-изображение на стороне сервера, из базы данных base64 javascript Динамическое изменение позиции корзины не работает с заказами в WooCommerce 3.0+ mysql_query для PDO и подготовленных операторов выполнять клики и выйти из веб-сайта, используя cURL и php Чтение данных из текстового файла и формирование таблицы с использованием php Почему, если я зарегистрировался на своем веб-сайте как зарегистрированный пользователь, я не могу получить доступ к другим страницам после установки правил сеанса? Что означает ошибка «PHP Fatal error: не может вызвать перегруженную функцию для не-объекта»? Автоматически удалять пользователей WordPress в зависимости от времени с момента регистрации? читать и искать в pdf-файле

zend_navigation и атрибут onclick

есть ли способ, как нажимать на страницу zend_navigation типа mvc или uri и давать атрибут onclick?

array ( 'type' => 'uri', 'label' => 'Map', 'title' => 'Map', 'uri' => '#', 'click' => 'alert("show map");' ) 

У меня есть суб-меню, в которое включены ссылки, которые срабатывают только модально. до сих пор я использую свое собственное «навигационное» решение, но я хочу использовать zend's one.

спасибо

Solutions Collecting From Web of "zend_navigation и атрибут onclick"

я должен упомянуть, что я знаю простой обходной путь – есть функция onload javascript, которая присоединяет события к некоторому меню в соответствии с их идентификаторами, но я просто хочу сохранить его простым и поддерживать определение всего меню в одном месте.

Вы можете написать свой собственный помощник меню вместо помощника 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(); ?> 

см. полный пример здесь: Получение меню Zend_Navigation для работы с Fisheye от jQuery