Formulář s toggle a označení required

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

Ahoj všem, mám jeden registrační formulář pro FO i PO, přičemž každá osoba má samozřejmě jiné validační podmínky. Níže uvedený kód funguje (validace probíhá), avšak v šabloně se nevygeneruje v tagu <tr> potřebná třída „required“, čímž nevykreslím info, že má být pole vyplněno.

    $form->addSelect('typ_registrace', 'Typ registrace:', array('b2b' => 'firemní registrace', 'b2c' => 'soukromá registrace'))
          ->addCondition(Form::EQUAL, 'b2b') // if
            ->toggle('udaje-o-spolecnosti')
            ->toggle('dodaci-adresa')
          ->elseCondition(Form::EQUAL, 'b2c') // else
            ->toggle('soukroma-adresa')
          ->endCondition();
...

    // formularove prvky pro b2b
    $form->addGroup('udaje-o-spolecnosti')
         ->setOption('label', 'Údaje o společnosti')
         ->setOption('container', 'fieldset id=sidlo-spolecnosti');

    $form->addText('firma', 'Název společnosti:', 50, 96)
         ->addConditionOn($form['typ_registrace'], $form::EQUAL, 'b2b')
         ->addRule($form::FILLED, 'Musíte vyplnit pole "Název společnosti"');
...
<tr>
<th>
<td>
<input id="frmregistraceForm-firma" class="text" type="text" value="" data-nette-rules="{op:':equal',rules:[{op:':filled',msg:"Mus\u00edte vyplnit pole \"N\u00e1zev spole\u010dnosti\""}],control:'typ_registrace',arg:'b2b'}" name="firma" maxlength="96" size="50">
</td>
</tr>

Díky za nakopnutí.

Editoval revoke (22. 5. 2013 7:28)

radas
Člen | 225
+
0
-

Podle mě se při použití defaultního rendereru nedoplňuje třída required, pokud je addRule($form::FILLED, …) až za podmínkou adddConditionOn().