Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [ZF] Form Elements i setDecorators.
siuda
post
Post #1





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 15.03.2012

Ostrzeżenie: (0%)
-----


Witam,

Mam pytanie odnosnie użycia dekoratorów przy tworzeniu formularza za pomocą Form Elements. Jeden z layoutów jest przygotowany do pracy z urządzeniami mobilnymi z użyciem jQuery Mobile i mam problem z datą urodzenia. To są 3 inputy typu select, które muszą się zawierać się w jednym <fieldset> i dodatkowo zawierać instrukcję data-role="controlgroup", czyli całosć będzie wyglądała następująco:

<fieldset data-role="controlgroup" data-type="horizontal">
.....
</fieldset>

Czy jest to możliwe do osiągnięcia za pomocą dekoratorów?


Pozdrawiam,
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Sephirus
post
Post #2





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Nie do końca rozumiem/zgadzam się z przedmówcą...

Jeśli używasz zenda i chcesz mieć to ładnie poukładane to wystarczy utworzyć jakiś nowy element w formie i przypisać do niego odpowiednio szablon html

  1. $pole= new Zend_Form_Element_Text('data');
  2. $pole->setLabel('data')
  3. ->setDecorators(array(array('ViewScript', array('viewScript' => 'sciezka/do/pliku.phtml'))));


w ten sposób możesz tworzyć sobie widoki html zupełnie dowolne... obsłuż w nich jedynie te dane, które przekazujesz do elementu (np label itp).

Jeśli przekazujesz jakieś dane do tego pola to w skrypcie widoku zamień np. date "2012-07-06" odpowiednio tak by do tych selectów wrzucić części daty (rok,miesiąc,dzień).

Przy odczycie forma (wysłaniu post'a) możesz nadpisać metodę forma isValid i dodać w nim sprawdzanie tego pola. Jak dobrze pokombinujesz to jest proste i skuteczne. i zachowujesz w pełni użycie formów, które same się sprawdzają itd... (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.09.2025 - 23:48