Problém s komponentou a formulářem
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- omachala
- Člen | 20
Zdravím, mám komponentu pro vykreslení formuláře:
<?php
public function createComponentAddForm($name) {
$form = new Form($this, $name);
$form->addText('name', 'Jméno')
->setRequired('Zadejte jméno.');
$form->addSubmit('submit', 'Odeslat');
$form->onSuccess[] = callback($this, 'send');
}
?>
ale do formuláře se nevykreslí žádný prvek a výsledek je tento:
<form action="/add/?do=addControl-addForm-submit" method="post" id="frm-addControl-addForm"><div><!--[if IE]><input type=IEbug disabled style="display:none"><![endif]--></div>
Když stejný kód použiju pro vykreslení formuláře přímo z presenteru (místo komponenty) tak běží bez problému. Tuším, že něco opomínám :-(
- Grelek
- Člen | 233
Vytvářet formulářovou komponentu tímto způsobem se nedělá. Zkus tohle.
public function createComponentAddForm()
{
$form = new Form();
$form->addText('name', 'Jméno')
->setRequired('Zadejte jméno.');
$form->addSubmit('submit', 'Odeslat');
$form->onSuccess[] = $this->addFormSubmitted;
return $form;
}
public function addFormSubmitted(Form $form)
{
}
V šabloně ho pak vykreslíš normálně přes
{control addForm}
nebo ručně. =)
Editoval Grelek (8. 8. 2013 0:19)