techdoc:filtrovani_selectboxu
Filtrování select boxů
Pro filtrování select boxů v editoru lze využít funkce eso9.filterSelectBox které se na vstup předá objekt s parametry pro filtrování. objekt musí obsahovat tyto hodnoty
- form: Název formy nad kterou je voláno
- maticeFields: Pole se seznam nazvu selectboxu v pořadí, ve kterém jsou na sobě závislé [„select1“, „select2“, „select3“]
- matice: Pole hodnot matice závislostí. Rozměr je dany počtem filtrovaných polí [ [1,1,0], [1,1,1], [1,2,0],[1,2,3] ]….
- alwaysEnabled: Pole hodnot, které se nezakazuji. Pro příklad [„“, -1] hodnota neurčeno
- changedField: Název pole které vyvolalo akci.
Funkce by měla být volána při změně hodnoty selectboxu. To se dosáhne zapojením vlastní funkce pomocí „data-JSfunction“
příklad funkce ve stránce.
<script> var par={}; //povolene kombinace hodnot select boxů par.matice = [ [1,1,1,2], [1,1,1,1], [1,1,2,1], [1,1,3,1], [1,2,1,1], [1,2,1,2], [1,2,4,1], [1,2,4,2], [1,2,5,1], [1,2,5,1] ]; //nazvy poli serazene dle zavislosti. pocet musi odpovidat poctu hodnot matice par.maticeFields = ["MF_VLSEL1", "MF_VLSEL2", "MF_VLSEL3", "MF_VLSEL4"]; //nazev formy ve ktere jsou pole par.form = "TEST"; //seznam hodnot, ktere se neskryvaji. Povětšínou hodnoty pro "neurčeno" par.alwaysEnabled = ["", -1]; //funkce zapojena do všech selectboxů. pomocí data-JSfunction=":filterSelectBox" var filterSelectBox = function (sender, rowState, rowData, browse ) { //pole ktere vyvolalo nastaveni par.changedField = sender.name; //volání funkce k obslouženi nastavení hodnot dle matice eso9.filterSelectBox(par) } </script>
techdoc/filtrovani_selectboxu.txt · Poslední úprava: 08.02.2025 13:00 autor: 127.0.0.1