Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [ZendFramework]jak oczyscic elementy formularza zend_form
Forum PHP.pl > Forum > PHP > Frameworki
agnieszkagdansk
  1. <?php
  2. $this->form = new Zend_Form();
  3.  
  4.    $aPicture['left']   = 'Po lewej stronie';
  5.    $aPicture['right']  = 'Po prawej stronie';
  6.  
  7.    $this->form->addElement('Radio','position');
  8.    $this->form->getElement('position')->addMultioptions($aPicture);
  9. ?>


celowo nie korzytam z rendera

  1. <form action="" method="">
  2. <?= $this->form->position ?>
  3. </form>


Mimo to Zend generuje mi dodatkowe znaczniki dt dd label,
których wcale nie potrzebuje na dodatek znacznik dd przesuwa mi
w prawo pierwszy element radio, czego nawet stylem nie moge naprawic.

Jak zrobic zeby
  1. <?= $this->form->position ?>

generował mi tylko radio bez dodatkowych znacznikow
melkorm
  1. <?php
  2. echo $this->Form->getElement('pole')->renderViewHelper();
  3. ?>


I masz czysty element.
ert16
na początku proponuję :
  1. <?php
  2. $form->setDisableLoadDefaultDecorators (true) ;
  3. ?>

a potem dodaj dekoratory których oczekujesz. (chyba HtmlTag ?)
agnieszkagdansk
Bardziej podoba mi sie ta druga metoda bo robi na całość
jednak jej uzycie mimo ze nie pokazuje błedu nic nie zmienia
dekoratory dalej są

Edit:
Troche sie pospieszyłam z odznaczeniem tego tematu na ok ale chyba nie da sie cofnac
piersza metoda która dziala dla jedengo elementu,
ale dla drugiel (jest to pole input file) powoduje wyswietlenie
An error occured
melkorm
Hmm, a moze jakis kod, dokładną treść błędu / wyjątku?
agnieszkagdansk
tylko an error occured nic wiecej nie pokazuje
natomiast element to file zwykły elemet formularza Zend_Form
zadnego dodatkowego kodu nie dawałam

Poza tym wolałąbym sie skupic na drugim rozwiązaniu
zastanawia mnie dlaczego nie zadziałało
melkorm
Nie wiem, ale czytając 7 raz tego posta nie moge go zrozumieć, pokaż kod jak definiujesz Form'a i jak go wyświetlasz w timplejtce tongue.gif
agnieszkagdansk
Dokładnie tak jak w pierwszym poście, nie chce wklejac tego samego zeby nie zasmiecac tego forum,
poza tym nie zabardzo mam mozliwosc bo robie na drugim kompie który nie ma neta
melkorm
dla File jest:

  1. <?php echo $this->registerForm->getElement('user_file')->renderFile(); ?>
agnieszkagdansk
No własnie dziwnie to jakos wyglada narazie nie mam mozliwosci sprawdzic,
ale ogolenie niejednolite zupełnie inne metody dla roznych elementow,
dlatego chiałabym uzyc tego drugiego sposobu
  1. <?php
  2. $this->form->setDisableDefaultDecorators(true);
  3. ?>


daje go zaraz po utworzeniu obiektu form
jednak nie działa
melkorm
Mi bardziej odpowiada używanie podanej przeze mnie metody wszystkie dostępne dekoratory masz w Zend_Form_Decorator, i robisz RenderNazwadekoratora(); i śmiga, może zrenderowac labele itp. Pelna kontrola winksmiley.jpg

Podanej funkcji przez ert16 nei stosowałem więc nie wiem winksmiley.jpg
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.