Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [ZendFramework]click w zend_navigation nie działa
Forum PHP.pl > Forum > PHP > Frameworki
elita4all
Próbowałem click i onclick i nic.
Poniższy kod mam wstawiony w funkcji init głównego kontrolera.

CODE
$this->view->navigation($nawigacjaZoo);
$nav = new Zend_Navigation(array(
array
(
'label' => 'Start',
'uri' => '#',
'onclick' => 'alert(\"test\");'
)
));
$helper = new Zend_View_Helper_Navigation_Menu();
$helper->setView(new Zend_View());
echo $helper->render($nav);

batman
Sprawdź params, czyli
  1. 'label' => 'Start',
  2. 'uri' => '#',
  3. 'params' => array('onclick' => 'alert("test");')
  4. )
elita4all
nie działa sad.gif
zrobie sobie w jquery, ale gdyby ktoś wiedział jak użyć clicka to poproszę...

Dziękuję
drPayton
id, title, class, href, target - Takie są możliwe atrybuty html dla elementu <a>

A dlaczego? No cóż, od dłuższego już czasu jest wyraźna tendencja do tego, by takie rzeczy pisać w osobnym miejscu, bez skryptów "inline". Podejrzewam, że to jest powodem wink.gif
Widać tu jednak brak konsekwencji, w Zend_Form możemy wstawiać dowolne własne atrybuty... :/
KrzysiekWildfire
Zatem jedynym sposobem na zrobienie on click to:
  1. <pages>
  2. <sitename>
  3. <label>name</label>
  4. <module>modul</module>
  5. <controller>controler</controller>
  6. <id>elem</id>
  7. </sitename>
  8. </pages>

i javascript (w typ przypadku przy użyciu jQuery):
  1. $(document).ready(function(){
  2. $("#elem").click(function(){
  3. //twój kod
  4. })
  5. })



tr!ckle
Cytat(drPayton @ 14.06.2011, 13:02:35 ) *
id, title, class, href, target - Takie są możliwe atrybuty html dla elementu <a>


Śmiem się nie zgodzić. A na poparcie mojej tezy mam link: klik ;]

Co do tematu, to sprawdź w ogóle czy ten onclick ci się generuje. Ponadto sprobuj w alercie zamiast cudzysłowów dać apostrofy, i koniecznie return false, czyli mniej więcej coś takiego:
Kod
array
(
'label' => 'Start',
'uri' => '#',
'onclick' => 'alert(\'test\'); return false;'
)


return false sprawi, że ci się strona nie przeładuje, tylko wywołana zostanie akcja i koniec ;]

drPayton
Temat dotyczy ZendFramework, a nie html'a jako takiego.

Warto zapoznać się najpierw a tematem, zanim udzieli się mylącej odpowiedzi.

A wszystko co trzeba, napisałem w poprzednim poście...
tr!ckle
Ależ zapoznałem się z tematem i zdaję sobie sprawę, że temat dotyczy ZF. Natomiast jestem na 100% pewien, że onclick działa dla tagu <a> wbrew temu, co napisałeś wcześniej. I moim zdaniem błąd leży w źle napisanej akcji dla onclick.

P.S. Tak nawiasem mówiąc, to temat bardziej dotyczy właśnie html-a i js, a to, że omawiany jest przy okazji użycia ZF, to już inna kwestia.
drPayton
Cytat(drPayton @ 14.06.2011, 13:02:35 ) *
id, title, class, href, target - Takie są możliwe atrybuty html dla elementu <a>
(...)

Temat dotyczy ZF, a powyżej wymienione zostały atrybuty dla tagu a, które wstawić możemy korzystając z Zend_Navigation.

Idź wypij kawkę, i nie spamuj więcej, skoro nawet nie wiesz o czym jest ten temat...
tr!ckle
Fakt. Zasugerowałem się czymś innym. Przepraszam zatem za zamieszanie.

P.S. A z tą kawą to masz rację tongue.gif
batman
Cytat(elita4all @ 14.06.2011, 12:15:57 ) *
nie działa sad.gif
zrobie sobie w jquery, ale gdyby ktoś wiedział jak użyć clicka to poproszę...

Dziękuję

Faktycznie. Zapomniałem, że params, to parametry przekazywane do adresu, a nie atrybuty znacznika a. Sorki za wprowadzenie w błąd. W chwili obecnej nie ma sposobu na dodanie z poziomu Zend_Navigation dodatkowych atrybutów. Musisz albo stworzyć własny partial w tym celu lub w Twoim przypadku skorzystać z jQuery, jak to już zostało wcześniej napisane.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.