setEmptyValue(); u Textarea

- Jay Gridley
- Člen | 16
Zdravím společenstvo,
používam metodu setEmptyValue() pro předdefinování hodnoty v textové poli formuláře – textarea. Mám problém s tím, že mi pak ale nefunguje pravidlo na nutnost vyplnit toto pole (->addRule(Form::FILLED, ‚Napište Váš komentář‘);
Mám tam
$form->addTextarea('text','Komentář')
->setEmptyValue('Váš komentář (povinný)')
->addRule(Form::FILLED, 'Napište Váš komentář');
$form['text']->getControlPrototype()->class('needed');
Kde dělám chybu?
Díky

- Jay Gridley
- Člen | 16
Ja myslim, ze neni. V tutorialu na zdrojaku se to pouzivalo na mail. Funguje to spolehlive i u jednoradkoveho input textu, ale nejak vazne textarea.

- PetrP
- Člen | 587
TextBase::setEmptyValue() nastaví prázdnou hodnotu, tedy to co když je vyplněno se považuje za prázdné např u emailu
$form->addText('email','E-mail')
->setEmptyValue('@')
->addCondition(Form::FILLED)
->addRule(Form::EMAIL, 'E-mail není platný.');
Způsobí že input se zobrazí z přednastavením @ ale když
se zavináč odešle tak si Forms myslí že nebyl vyplněn, tedy neprojde
condition.

- Jay Gridley
- Člen | 16
Ano, presne tak, akorat u textarea pak nefunguje podminka na nutnost vyplneni. Bere to tu emptyValue jakoze uz vyplnenou uzivatelem.
EDIT: Jeste tedy dodavam, ze pouzivam verzi 0.8 pro php 5.2
Editoval Jay Gridley (23. 7. 2009 9:07)