Nastaviť „prompt“ hodnotu selectbox-u ako „selected“ prizobrazení formuláru
- Danndy
- Člen | 35
Ahoj.
Mám takýto dotaz. Keď vytvorím v nejakom formulári select box, napr. :
$this->addSelect('category', 'Kategória', $categoryFacade->getCategoryPairs())
->setPrompt('všetky');
tak sa pri vykresení formuláru defaultne nastaví v mojom select-boxe hodnona prompt čize „všetky“ ale to bez toho aby tento <option> html tag bol označený ako selected="".
<select name="category" id="frm-archiveSearchForm-category">
<option value="">všetky</option>
<option value="2">Kategoria 1</option>
<option value="4">Kategoria 2</option>
<option value="5">Kategoria 3</option>
<option value="3">Kategoria 4</option>
</select>
Moja otázká znie, je možne nejakým sposobom nastaviť pre takýto selectbox, aby jeho prompt hodnota bola hned pri zobrazení formuláru selected tzn. nastaviť default hodnotu pre selectbox ""/NULL ? Potrebujem to koli bootstrap-select jQuery pluginu aby mi pri zobrazení formularu, zobrazoval že je vybraná default hodnota prompt.
- CZechBoY
- Člen | 3608
Možností je několik, teď mě napadá třeba
- přepsat renderer (podědit DefaultFormRenderer, při vykreslování SelectBoxu vykreslit prompt se selected)
- přepsat addSelect (v nějakým BaseForm přepsat metodu addSelect a pak nastavit defaultní hodnotu)
- manuální render formuláře
- upravit si to v js přes jquery
- Danndy
- Člen | 35
@CZechBoY dík za odpoveď. Chcem sa len opýtať, je vobec možne selectboxu nastaviť default nasledovne alebo neajk podobne ako:
$this->addSelect('category', 'Kategória', $categoryFacade->getCategoryPairs())
->setPrompt('všetky')->setDefaultValue(null);
??
Editoval Danndy (21. 9. 2016 18:51)