Vykreslení jen určité části formuláře
- dEath
- Člen | 39
Ahoj,
řeším věc, jak vykreslit jen určitou část formuláře vlastním způsobem, který pošlu přes továrničku. Takže v šabloně mám jen {$form}. Já bych ale potřeboval vypsat vlastním způsobem jen určitou část formuláře a zbytek nechat vypsat podle nastavených wrapperů.
Např. mám nějaké elementy uzavřené do skupiny
<?PHP
$form->addText('text', 'Text');
// a například cyklem generovaný určitý počet checkboxů - přes multiselect je to dost neuživatelské, v proměnné $hodnoty;
$form->addGroup('Kontejner');
foreach($hodnoty as $hodnota){
// udělat například promennou id_hondnot[] se mi nepodarilo, ladenka chce alfanumeric string a ne array
$form->addCheckBox('id_hodnoty_'.$hodnota['id'], $hodnota['nazev']);
}
$form->addSubmit('odeslat', 'Odeslat');
?>
teď udělat, aby se kontejner například nějak ostyloval to problém není, ale vypisuje se mi vždy nad celým zbývajícím formulářem, i když ho mám umístěný ve struktuře jako předposlední (pak je jen tlačítko). Takže aby to vypadalo nějak takto …
<form ... >
<label ..><input type="text" ...>
<fieldset>
<legenda>Kontejner</legenda>
<input type="checkbox" ... >
...
</fieldset>
<input type="submit" ... >
</form>
je vůbec dobré takhle řešit možnost multivýběru? Multiselect mi přijde dost hrozný, potřebuji spíše přehlednost a udělat si vlastní vykreslení určité grupy by pak neměl být snad problém, ale jak zařadit zbytek formuláře v základní podobě, aby se upravoval pouze přes wrapper a group v případě potřeby v šabloně.
Díky za rady
Editoval dEath (31. 8. 2010 12:05)