RadioList dotaz
- Martin Mates
- Člen | 179
Zdravím. Chci se zeptat na 2 věci:
- Když na stránku přidám radioList, který má X položek a chci, aby byl implicitně první už zaškrtnutý. Jak na to v appForm?
- Jak se dá jednoduše změnit separátor mezi jednotlivými radio buttony? Napadlo mě:
<?php
$form->addRadioList('druh', 'jedná se o:', $options)
->getSeparatorPrototype()->setHtml('element');
?>
to slouží ale nejspíš k naplnění obsahu html elementu. Pak jsem si říkal, že by šel nějak poladit renderer, něco jako:
<?php
$renderer = $form->getRenderer();
$renderer->wrappers['form']['container'] = Html::el('table')->id('dotaz');
?>
ale pro separator u radio buttonu. Nevíte?
Editoval Martin Mates (8. 4. 2009 18:25)
- Patrik Votoček
- Člen | 2221
1)
<?php
$form->addRadioList('druh', 'jedná se o:', $options)
if (!$form->isSubmitted())
$form['druh']->setValue('sem napis to co ma byt defaultne vybrano');
?>
- kravčo
- Člen | 721
1) Ak chceš nastaviť predvolenú hodnotu viacerím prvkom,
bude rozumnejšie použiť setDefaults()
:
$form = new AppForm;
$form->addXYZ...
if (!$form->isSubmitted()) { // Edit: doplnený „!“
$form->setDefaults(array(
'radio1' => 1,
'text1' => "Hello world!\n",
'checkbox1' => true,
));
}
2) v jednom vlákne sa to tu už riešilo…
Editoval kravco (8. 4. 2009 23:52)
- Martin Mates
- Člen | 179
Já bych spíš potřeboval nějak přistoupit k vlastnosti checked. Aby to bylo zaškrtnuté i vizuálně. Nevím, jak na to s tím getControlPrototype, kdyz v radioListu je tech radio buttonu víc.
- Martin Mates
- Člen | 179
Já tomu rozumím, proč to nepotřebuju. Je to 100% funkční i bez toho. Ale já bych chtěl, aby to prostě bylo zaškrtnuté. Ať už je důvod jakýkoli. Takhle si uživatel myslí, že neučinil žádnou volbu, že to nechal nevyplněné.
Zatím jako jedinou cestu vidím javascipt, který to zaškrtne :-/
- kravčo
- Člen | 721
Neviem kde je chyba, no mne kód, ktorý som vyššie napísal, druhý z radiobuttonov „zaškrtne“ – tak, že to vidím.
<input type="radio" name="moznost" id="frm-moznost-0" value="1" />
<label for="frm-moznost-0">možnosť č. 1</label>
<br />
<input type="radio" name="moznost" id="frm-moznost-1" checked="checked" value="2" />
<label for="frm-moznost-1">možnosť č. 2</label>
<br />
<input type="radio" name="moznost" id="frm-moznost-2" value="3" />
<label for="frm-moznost-2">možnosť č. 3</label>
<br />
Editoval kravco (8. 4. 2009 22:41)
- Martin Mates
- Člen | 179
Zkoušel jsem nejdříve to s tím isSubmitted a to mi nefungovalo. Bez toho to jde bez problémů a i to vidím zaškrtnuté. Díky moc!
- kravčo
- Člen | 721
Akonáhle sa Nette\Forms\Form.php
zmení, odkaz prestane byť
platný – lepšie je odkazovať napr. na vlákno, kde sa
to preberalo, to bude aktuálne dlhšie.