Эквивалент URL-помощника внутри Zend Form - PullRequest
0 голосов
/ 07 февраля 2012

У меня есть Zend-форма, и мне нужно предоставить динамическую ссылку на форму. то есть. Пользователь пытается выбрать из выпадающего списка -> если нужной опции нет, нажмите на соседнюю ссылку, чтобы открыть другую форму, где он может добавить эту опцию. Ссылка будет динамической, потому что я хочу опубликовать некоторые данные из текущей формы с помощью GET (например, страна и регион уже выбраны).

Как я могу это сделать?

Ответы [ 2 ]

2 голосов
/ 08 января 2013
Zend_Controller_Front::getInstance()->getRouter()->assemble($urlOptions, $name, $reset, $encode)

IE:

Zend_Controller_Front::getInstance()->getRouter()->assemble(array('controller' => 'index', 'action' => 'index'), null, true)

То же, что и в Zend_View_Helper_Url ...

0 голосов
/ 07 февраля 2012

Вы можете сделать это на стороне клиента, используя javascript / AJAX - обнаружить нажатие на ссылку, собрать данные формы и перейти на другую страницу. Если вам нужен причудливый URL-адрес другой страницы, вам придется сделать AJAX-вызов на сервер, чтобы получить причудливый URL-адрес на основе параметров формы,

или

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

Что касается рендеринга ссылки рядом с элементом Zend_Form_Element, вы можете сделать это несколькими способами, одним из них будет размещение ее в метке или описании (setLabel(), setDescription()), при этом обязательно указав escape параметр декоратора для false (пример здесь )

...