Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 1 333 Pomógł: 137 Dołączył: 25.03.2008 Skąd: jesteś?? Ostrzeżenie: (0%)
|
Jestem ciekaw jak rozwiązać problem z formami w zend mianowicie chodzi o atrybucie id w inputach, mam na stronie dwa formularze i w każdym z nich jest input o nazwie "login", dzięki czemu na stronie mam dwa razy id = "login" co jest nie poprawne i chciał bym to jakoś naprawić.
Jest jakiś łatwy sposób by dodawać przed wszystkimi id, for itp. nazwę całego forma? Czy zostaje mi napisać własny widok do formularza? |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 1 333 Pomógł: 137 Dołączył: 25.03.2008 Skąd: jesteś?? Ostrzeżenie: (0%)
|
Można, można ale już lepszym pomysłem wydaje się zmodyfikowanie widoku na taki który będzie nadawał id, for, class itp. początek pochodzący od nazwy całego forma. Ehhh, zend to zabawa w chowanego z obchodzeniem małych problemów. ;]
ROZWIĄZANIE: Można stworzyć klasę dziedziczącą po zend_form (tutaj nasz kolega z forum ładnie to demonstruje, poza tym tutaj znalazłem natchnienie do rozwiązania problemu - http://blog.wilgucki.pl/2010/06/uniwersaln...-zendform.html) i w niej na stałe umieścić tą regułę lub w każdym formem w jakim jest potrzebna, tylko trzeba pamiętać iż powinna być na samym końcu lub po dodaniu elementów.
W skrócie - przechodzi po wszystkich elementach i zmienia ich Id dodając przedrostek którym jest nazwa całego forma (ustawiamy ją w taki sposób $this->setName('')), przy okazji zend jest taki inteligentny iż zmienia sam znacznik for w label, więc nic więcej nie trzeba a całość jest w pełni automatyczna. :-) Ten post edytował ShadowD 8.06.2012, 23:17:12 |
|
|
|
ShadowD [ZendFramework]Zend Form 7.06.2012, 21:04:39
Pilsener 1. Można zmienić nazwę jednego na "login2... 8.06.2012, 10:09:03 ![]() ![]() |
|
Aktualny czas: 26.12.2025 - 00:33 |