Globálně pro required přidat hvězdičku za labelem?
- Ondřej Mirtes
- Člen | 1536
V CSS :o)
label.required:after {
content: " *";
color: #ff0000;
font-weight: bold;
}
Myslím, že to je naprosto postačující.
- pjoter
- Člen | 118
přes css mi to nefunguje v ie. ten renderer mám pocit jakoby vůbec nefungoval asi proto že používám vlastní renderování ?
<?php
<div class="register-item">
{$form['jmeno']->label}<br />
{$form['jmeno']->control}
</div>
?>
existuje ještě nějaká další možnost ?
Editoval pjoter (15. 1. 2010 9:17)
- Ondřej Mirtes
- Člen | 1536
IMHO to nefunguje akorát v IE 6 a na ten jsem zanevřel.
Pokud nepoužíváš žádný renderer, tak už žádné možnosti asi nemáš. Leda si napsat vlastní.
- PetrP
- Člen | 587
Ondřej Mirtes napsal(a):
V CSS :o)
label.required:after { content: " *"; color: #ff0000; font-weight: bold; }
Myslím, že to je naprosto postačující.
Naprosto nepřístupné řešení, například pro slepé. Čtečky dost často používají IE6 jádro, nebo rovnou běží v IE6.
Správné řešení je přes wrapper v ConventionalRendereru. (jak píšou jiný)
Nebo u ručního renderování si na to přidat podmínku:
{if $control->getOption('required')} * {/if}
- dakota
- Člen | 148
Uvítal by som, ak aby sa suffix (napr. :) a requiredsuffix (pre povinnú položku napr. *) dali nastavit nejako globalne aj pri ručnom renderovaní formulára. Často používam ručne renderovanie namiesto ConvetionalRenderer, mam tak lepšiu kontrolu nad vykreslením formulára.
Pri ručnom renderovaní sa však suffix a requiredsuffix nedajú nastaviť, pridá sa jedine class=„required“ na značku label ak je položka povinná.
Jednou z možnosti je v tomto prípade použiť:
<tr>
<td>{$form['name']->getControl()}{if $form['name']->getOption('required')} * {/if}</td>
<td>{$form['name']->getControl()}</td>
</tr>
Podmienku však musím pridať pri každej položke, ktora ma byť povinná. To zneprehľadňuje kód šablony a tiež nie je jednoduche zmeniť requiredsuffix. Klasicky suffix napr. pridanie dvojbodky za nazov položky tym neriešim.
Tiež by bolo vhodné ak by sa suffix, requiredsuffix dali pri ručnom renderovaní nastaviť v šablone, kde podla mňa toto nastavenie patrí, napr. spôsobom ako to je pri ConventionalRenderer, alebo ešte nejako jednoduchšie.
{? $form->getRenderer()->wrappers['label']['suffix'] = ":"}
{? $form->getRenderer()->wrappers['label']['requiredsuffix'] = "<span>*</span>"}
Pripravujú sa v tomto smere nejake zmeny???