Formulare, skryvanie submit buttonu
- tomas3333
- Člen | 8
Mam vytvoreny formular ako komponentu, zobrazujem ho bud normalne na stranke, ak je vypnuty javascript alebo nacitam ajaxom. V pripade, ze je formular nacitany ajaxom chcem mat moznost ten formular znovu zatvorit. Na to posluzi tlacitko cancel, ktore vsak pri normalnom zobrazeni nema zmysel. Da sa nejak pri vytvarani formulara nastavit tomuto submitu display:none?
- redhead
- Člen | 1313
Pokud chceš tím tlačítkem jenom formulář schovat, tak bych ho tam vkládal dynamicky javascriptem a navěsil na ni akorát nějaký handler, který by formulář schoval. Pokud nebude javascript fungovat, tak se samozřejmě tlačítko nevloží.
Jinak všemu se dá nastavit co chceš:
$form->addSubmit(...)
->getControlPrototype()
->style('display: none');
- tomas3333
- Člen | 8
Dik, nakoniec som sa vsak rozhodol, ze vykreslim formulare rucne, aj preto, ze pri normalnom zobrazeni a ajaxovom bude viac odlisnosti. Narazil som vsak na problem, nefunguje mi odoslanie formularu.
<?php $form->render('begin') ?>
resp.
{!$form->render('begin')}
vygeneruje
<form action="" method="post" id="frm-">
a tym padom sa formular neodosle. Pri vytvarani formularu je nastavene toto:
$form->onSubmit[] = callback($this, 'saveQuestion');
Co robim zle?
- redhead
- Člen | 1313
Děláš ho přes továrničku?
Do šablony ho pak nijak nemusíš předávat přes proměnnou $form, ale vytáhneš si ho přes $presenter:
{control nazevFormulare 'begin'}
{control nazevFormulare 'errors'}
{var form => $control['nazevFormulare']}
{!$form['prvek']->label}
{!$form['prvek']->control}
atd...
{control nazevFormulare 'end'}