FORM::FILLED a setDefaultValue – vyplnění pole mimo defaltní hodnotu

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
JaroslavRamba
Člen | 20
+
0
-

Zdravím,

jak ošetřit, aby uživatel neodeslal formulář s defaultní hodnotou a opravdu hodnotu změnil?

$form->addText('name', 'Jméno')->setDefaultValue('Jméno')
                ->addRule($form::FILLED, 'Vyplňte své jméno');

Díky

David Matějka
Moderator | 6445
+
0
-

na tohle se nehodi defaultni hodnota, radeji pouzij placeholder:

$form->addText(...)->setAttribute('placeholder', 'Jméno');

jinak by ta validace mohla vypadat nasledovne:

$form->addText(...)->addRule($form::FILLED, ...)->addRule(~$form::EQUAL, ..., 'Jméno');

~ zneguje pravidlo

duke
Člen | 650
+
0
-

Mělo by také být možné použít metodu setEmptyValue a pak prostě jen kontrolovat, zda je pole vyplněno.