var NEVYBRANO = document.createElement("option"); NEVYBRANO.value = ""; NEVYBRANO.innerHTML = "--------------------"; var poctySluzebPodleDruhu; var krajeOkresy = new Object(); krajeOkresy["Hlavní město Praha"] = [ "Hlavní město Praha" ] krajeOkresy["Jihočeský"] = [ "České Budějovice" , "Český Krumlov" , "Jindřichův Hradec" , "Písek" , "Prachatice" , "Strakonice" , "Tábor" ] krajeOkresy["Jihomoravský"] = [ "Blansko" , "Brno-město" , "Brno-venkov" , "Břeclav" , "Hodonín" , "Vyškov" , "Znojmo" ] krajeOkresy["Karlovarský"] = [ "Cheb" , "Karlovy Vary" , "Sokolov" ] krajeOkresy["Královéhradecký"] = [ "Hradec Králové" , "Jičín" , "Náchod" , "Rychnov nad Kněžnou" , "Trutnov" ] krajeOkresy["Liberecký"] = [ "Česká Lípa" , "Jablonec nad Nisou" , "Liberec" , "Semily" ] krajeOkresy["Moravskoslezský"] = [ "Bruntál" , "Frýdek-Místek" , "Karviná" , "Nový Jičín" , "Opava" , "Ostrava-město" ] krajeOkresy["Olomoucký"] = [ "Jeseník" , "Olomouc" , "Prostějov" , "Přerov" , "Šumperk" ] krajeOkresy["Pardubický"] = [ "Chrudim" , "Pardubice" , "Svitavy" , "Ústí nad Orlicí" ] krajeOkresy["Plzeňský"] = [ "Domažlice" , "Klatovy" , "Plzeň-jih" , "Plzeň-město" , "Plzeň-sever" , "Rokycany" , "Tachov" ] krajeOkresy["Středočeský"] = [ "Benešov" , "Beroun" , "Kladno" , "Kolín" , "Kutná Hora" , "Mělník" , "Mladá Boleslav" , "Nymburk" , "Praha-východ" , "Praha-západ" , "Příbram" , "Rakovník" ] krajeOkresy["Ústecký"] = [ "Děčín" , "Chomutov" , "Litoměřice" , "Louny" , "Most" , "Teplice" , "Ústí nad Labem" ] krajeOkresy["Vysočina"] = [ "Havlíčkův Brod" , "Jihlava" , "Pelhřimov" , "Třebíč" , "Žďár nad Sázavou" ] krajeOkresy["Zlínský"] = [ "Kroměříž" , "Uherské Hradiště" , "Vsetín" , "Zlín" ] EventController.registerEvent(window, EventController.LOAD, function(e) { var krajSelectElement = document.getElementById("zak"); var okresSelectElement = document.getElementById("zaok"); var vcetneOkolnichOkresuElement = document.getElementById("ook"); EventController.registerEvent(krajSelectElement, EventController.CHANGE, function(e) { var vybranyKraj = krajSelectElement.options[krajSelectElement.selectedIndex].value; var vybranyOkres = okresSelectElement.options[okresSelectElement.selectedIndex].value; var vybranyOkresPattern = new RegExp("^" + vybranyOkres + "$", "i"); var okresy = krajeOkresy[vybranyKraj]; while(okresSelectElement.hasChildNodes()){ okresSelectElement.removeChild(okresSelectElement.firstChild); } okresSelectElement.appendChild(NEVYBRANO); if((okresy != null) && (okresy.length > 0)){ for(var i = 0; i < okresy.length; i++){ var novyOkresElement = document.createElement("option"); novyOkresElement.value = okresy[i]; novyOkresElement.innerHTML = okresy[i]; //if(vybranyOkresPattern.test(okresy[i])){ // novyOkresElement.selected = true; //} okresSelectElement.appendChild(novyOkresElement); } }else{ for(var kraj in krajeOkresy){ var novyOptGroup = document.createElement("optgroup"); novyOptGroup.label = kraj; var okresy = krajeOkresy[kraj]; for(var i = 0; i < okresy.length; i++){ var novyOkresElement = document.createElement("option"); novyOkresElement.value = okresy[i]; novyOkresElement.innerHTML = okresy[i]; //if(vybranyOkresPattern.test(okresy[i])){ // novyOkresElement.selected = true; //} novyOptGroup.appendChild(novyOkresElement); } okresSelectElement.appendChild(novyOptGroup); } } if(vcetneOkolnichOkresuElement && manageVcetneOkolnichOkresuAccessibility){ manageVcetneOkolnichOkresuAccessibility(vcetneOkolnichOkresuElement, okresSelectElement) } if(poctySluzebPodleDruhu && vcetneOkolnichOkresuElement){ poctySluzebPodleDruhu(krajSelectElement, okresSelectElement, vcetneOkolnichOkresuElement); } }, false); EventController.registerEvent(okresSelectElement, EventController.CHANGE, function(e) { var krajVybranehoOkresu = okresSelectElement.options[okresSelectElement.selectedIndex].parentNode.label; if(krajVybranehoOkresu){ for(var i = 0; i < krajSelectElement.length; i++){ krajOptionElement = krajSelectElement.options[i]; if(krajOptionElement.value.match(new RegExp("^" + krajVybranehoOkresu + "$", "i"))){ krajOptionElement.selected = true; break; } } } if(vcetneOkolnichOkresuElement && manageVcetneOkolnichOkresuAccessibility){ manageVcetneOkolnichOkresuAccessibility(vcetneOkolnichOkresuElement, okresSelectElement) } if(poctySluzebPodleDruhu && vcetneOkolnichOkresuElement){ poctySluzebPodleDruhu(krajSelectElement, okresSelectElement, vcetneOkolnichOkresuElement); } }, false); if(vcetneOkolnichOkresuElement){ EventController.registerEvent(vcetneOkolnichOkresuElement, EventController.CLICK, function(e) { if(poctySluzebPodleDruhu){ poctySluzebPodleDruhu(krajSelectElement, okresSelectElement, vcetneOkolnichOkresuElement); } }, false); } }, false);