Polja obrazca: Dropdown Editor
Nazaj: predstavitveni pregled
1. Pregled in namen
Stanje: [Live] — widgets::dropdown() plus vedenje
prekrivnega elementa v scripts/formfields.js. Izvor in pogodba
ARIA: vrstica „Dropdown„ v osnovnem
katalogu gradnikov (aria-haspopup/aria-expanded, razred
.wk-dropdown). Referenca: DevExpress-ov ASPxDropDownEdit
(poljubna vsebina pojavnega okna namesto fiksnega seznama možnosti).
2. Predpogoji
skupna pogodba polj že razumljena.
3. Pojmi
Razmejitev od Combo Boxa: Dropdown Editor se od
Combo Boxa
razlikuje po tem, da pojavno okno nosi poljuben HTML (npr. mini
propertyGrid(), barvno paleto, izbirnik razpona datumov) namesto
čistega seznama besedilo+vrednost — analogno BaseDropdown/DropdownMenu
v katalogu gradnikov.
Vedenje brez JS: brez JavaScripta se Dropdown Editor izriše kot
nativen par <details>/<summary> (ista osnovna tehnika
kot pri widgets::tree()-u) — pojavno okno je razširljivo območje v
normalnem toku dokumenta, ne lebdeč prekrivni element. Z JavaScriptom
scripts/formfields.js namesto tega postavi pojavno okno kot
prekrivni element nad poljem in ga zapre ob kliku zunaj njega oziroma
ob Escape.
4. Prvi koraki
echo $widgets->dropdown([ 'name' => 'obdobje', 'label' => 'Obdobje', 'summaryHtml' => hsc('Zadnjih 7 dni'), 'popupHtml' => $widgets->propertyGrid($poljaObdobja), ]);
5. Uporaba
Za poljubno vsebino pojavnega okna (obrazci, barvne palete, izbirniki). Za fiksen seznam besedilo+vrednost namesto tega uporabiti Combo Box.
6. API referenca
Metoda dropdown(array $opts): string v
helper_plugin_wkfluentui_widgets.
7. Parametri, možnosti in stanja
| Ključ | Tip | Pomen |
|---|---|---|
summaryHtml | string | zaupanja vreden HTML za vidno, zaprto stanje (npr. trenutno izbrana vrednost kot besedilo) |
popupHtml | string | zaupanja vreden HTML za vsebino pojavnega okna |
closeOnSelect | bool | ali izbira v pojavnem oknu to samodejno zapre (vedenje JS, brez JS ostane ročno prek klika na <summary>) |
8. Popolni primeri
echo $widgets->dropdown([ 'name' => 'filter', 'label' => 'Napredni filtri', 'summaryHtml' => hsc('3 filtri aktivni'), 'popupHtml' => $widgets->propertyGrid($poljaFiltra), 'closeOnSelect' => false, ]);
9. Omejitve in robni primeri
Nobenih onkraj strani funkcij.
10. Dostopnost in združljivost
Celoten pregled: Accessibility.
11. Odpravljanje težav
Se ne uporablja.
12. Sorodne teme
- predstavitveni pregled — vsaka kategorija
- Polja obrazca: Combo Box — fiksen seznam besedilo+vrednost namesto proste vsebine pojavnega okna
- FluentUI: osnovni katalog gradnikov — predstopnja CSS/ARIA ravni 2