odeslani formulare – onInvalidSubmit
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- geosup
- Člen | 16
Prosim vas, v jakem pripade se vola metoda onInvalidSubmit ? … je mi jasne, ze se vola v pripade, ze odeslany formular je nevalidni. Ale jde mi o to, podle ceho se rozhoduje, ze je odeslany formular nevalidni.
Mam totiz vytvoreny jednoduchy prihlasovaci formular (bez pridanych pravidel), ktery posleze v sablone vykresluju pomoci FormMacros. V Nette alpha mi to fungovalo a v pohode se volala metoda formSubmited, ale po prechodu na betu mi to z me neznamych duvodu vola onInvalidSubmit.
Nevite v cem by mohl byt problem, prosim ?
- geosup
- Člen | 16
LoginForm.php
$this->addProtection('Vypršela platnost.');
$this->addText('login');
$this['login']->getControlPrototype()->class('graphic');
$this->addPassword('password');
$this['password']->getControlPrototype()->class('graphic');
$this->addSubmit('send');
$this['send']->getControlPrototype()->class('graphic');
$this->onSubmit[] = 'formSubmited';
$this->getElementPrototype()->style['padding-top'] = '25px';
$this->getElementPrototype()->style['padding-left'] = '20px';
v sablone:
{form loginForm}
<table>
<tr>
<td>{label login}Přihlašovací jméno:{/label}</td>
<td>{input login}</td>
</tr>
<tr>
<td>{label password}Heslo:{/label}</td>
<td>{input password}</td>
</tr>
<tr>
<td></td>
<td>{input send, value => "Přihlásit"}</td>
</tr>
</table>
{/form}
- Jan Tvrdík
- Nette guru | 2595
- Když nepoužiješ
FormMacros
, bude se to chovat stejně? - Dumpni si po odeslání
$form->getErrors()
- Zkus zakomentovat
$form->addProtection
- 22
- Člen | 1478
nevím, jakou máš verzi Nette, ale i tak definice toho formu mi přijde dost divná!!
use Nette\Application\UI\Form //pro namespace verzi
protected function createComponentForm($name)
{
$form = new Form($this, $name);
$form->addText('login', 'Login:')
....
return $form;
}
takže tvoje $this
tam dost nechápu…projdi si exmples
z distribuce..