Zakaz renderovani form controlu + dotaz na vkladani controls?
- Dj_Oggy
- Člen | 67
Zdravim,
mam checkbox a potreboval bych jej tvorit, ale pro add form jej chci
odstranit (nechci aby byl viditelny, ale pres style tam porad jakoby je, jen
skryty) a pro edit formular jej chci zobrazit.
Je to nejak mozne? Prvni jsem hledal neco setVisibility nebo neco takoveho, ale
nic jsem nenasel.
Pak me napadlo tuto control pridavat, jenze se pridava na konec formulare.
Tudiz, je mozne nejak pridavat prvky doprostred formulare? Treba mezi x-ty a
y-ty prvek?
Diky za nakopnuti
- Dj_Oggy
- Člen | 67
Normalne by to tak stacilo, ale vzhledem k tomu, ze se ten form ve vychozim nastaveni renderuje do tabulky, tak kdyz ho skryju, tak v te tabulce zustane a kdyz se prida dalsi controla, tak tam jsou je mezera mezi nima a tu prave nechci.
Jeste me napadlo primo umistit controly formu primo do sablony a pomoci makra if to zobrazovat/skryvat.
- Honza Kuchař
- Člen | 1662
Přidávat mezi prvky formulářů se samozdřejmě dá, ale je to lehce
komplikovanější a to proto, že $form->addCheckbox
volá
$form[$name] = new CheckBox($label);
no a toto volá
$form->
addComponent (new Checkbox($label), $name);
Tzn, pokud chceš přidat něco před něco, tak tam napíšeš toto:
$checkbox = new Checkbox("popisek" /* Možná se toho tady dá nastavit více, z hlavy nevím */); // Vytvoření objektu checkboxu
$form->addComponent($checkbox,"jmeno","nazevKomponentyPredKterouChcesCheckboxVlozit"); // Připojení checkboxu do stromu komponent
$form["jmeno"]->addRule(/* Něco */); // Možná by šlo i $checkbox->addRule(), ale v té chvíli, ještě není komponenta připojená do stromu komponent, takže nevím, jestli to bude fungovat
- Honza Kuchař
- Člen | 1662
Jeste me napadlo primo umistit controly formu primo do sablony a pomoci makra if to zobrazovat/skryvat.
To taky není špatné, ale potom dostaneš v onSubmit jako hodnotu toho skrytého políčka vždy default.