Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <html>
- <head>
- <script type="text/javascript">
- function MenupunktService() {
- function Menupunkt (pMenuName, pEbene) {
- this.menuName = pMenuName;
- this.ebene = pEbene;
- this.childsMenupunkt = new Array();
- this.parentMenupunkt = null;
- this.addChild = function addChild(pChildMenupunkt) {
- this.childsMenupunkt[this.childsMenupunkt.length] = pChildMenupunkt;
- }
- this.setParent = function setParent(pParentMenupunkt) {
- this.parentMenupunkt = pParentMenupunkt;
- }
- }
- var lMenupunktAnna = new Menupunkt("Anna", 1);
- var lMenupunktArne = new Menupunkt("Arne", 1);
- var lMenupunktBerta = new Menupunkt("Berta", 1);
- var lMenupunktBernie = new Menupunkt("Bernie", 2);
- var lMenupunktBeate = new Menupunkt("Beate", 2);
- var lMenupunktTorsten = new Menupunkt("Torsten", 2);
- var lMenupunktThorsten = new Menupunkt("Thorsten", 2);
- var lMenupunktThomas = new Menupunkt("Thomas", 2);
- var lMenupunktKalle = new Menupunkt("Kalle", 2);
- var lMenupunktKarl = new Menupunkt("Karl", 2);
- var lMenupunktSiegfried = new Menupunkt("Siegfried", 3);
- var lMenupunktMichael = new Menupunkt("Michael", 3);
- var lMenupunktSebastian = new Menupunkt("Sebastian", 3);
- var lMenupunktMartin = new Menupunkt("Martin", 3);
- var lMenupunktPeter = new Menupunkt("Peter", 3);
- var lMenupunktFrank = new Menupunkt("Frank", 3);
- var lMenupunktYasmin = new Menupunkt("Yasmin", 3);
- var lMenupunktAnne = new Menupunkt("Anne", 3);
- var lMenupunktKevin = new Menupunkt("Kevin", 3);
- var lMenupunktStefan = new Menupunkt("Stefan", 3);
- // Add Ebene 1
- lMenupunktAnna.addChild(lMenupunktBernie);
- lMenupunktAnna.addChild(lMenupunktBeate);
- lMenupunktArne.addChild(lMenupunktTorsten);
- lMenupunktArne.addChild(lMenupunktThorsten);
- lMenupunktBerta.addChild(lMenupunktThomas);
- lMenupunktBerta.addChild(lMenupunktKalle);
- lMenupunktBerta.addChild(lMenupunktKarl);
- // Add Ebene 2
- lMenupunktBernie.setParent(lMenupunktAnna);
- lMenupunktBernie.addChild(lMenupunktSiegfried);
- lMenupunktBernie.addChild(lMenupunktMichael);
- lMenupunktBeate.setParent(lMenupunktAnna);
- lMenupunktBeate.addChild(lMenupunktSebastian);
- lMenupunktTorsten.setParent(lMenupunktArne);
- lMenupunktTorsten.addChild(lMenupunktMartin);
- lMenupunktThorsten.setParent(lMenupunktArne);
- lMenupunktThorsten.addChild(lMenupunktPeter);
- lMenupunktThorsten.addChild(lMenupunktFrank);
- lMenupunktThorsten.addChild(lMenupunktYasmin);
- lMenupunktThorsten.addChild(lMenupunktStefan);
- lMenupunktThomas.setParent(lMenupunktBerta);
- lMenupunktThomas.addChild(lMenupunktKevin);
- lMenupunktKalle.setParent(lMenupunktBerta);
- lMenupunktKarl.setParent(lMenupunktBerta);
- lMenupunktKarl.addChild(lMenupunktAnne);
- // Add Ebene 3
- lMenupunktSiegfried.setParent(lMenupunktBernie);
- lMenupunktMichael.setParent(lMenupunktBernie);
- lMenupunktSebastian.setParent(lMenupunktBeate);
- lMenupunktMartin.setParent(lMenupunktTorsten);
- lMenupunktPeter.setParent(lMenupunktThorsten);
- lMenupunktFrank.setParent(lMenupunktThorsten);
- lMenupunktYasmin.setParent(lMenupunktThorsten);
- lMenupunktAnne.setParent(lMenupunktKarl);
- lMenupunktKevin.setParent(lMenupunktThomas);
- lMenupunktStefan.setParent(lMenupunktThorsten);
- var lMenupunkte = [
- lMenupunktAnna,
- lMenupunktArne,
- lMenupunktBerta,
- lMenupunktBernie,
- lMenupunktBeate,
- lMenupunktTorsten,
- lMenupunktThorsten,
- lMenupunktThomas,
- lMenupunktKalle,
- lMenupunktKarl,
- lMenupunktSiegfried,
- lMenupunktMichael,
- lMenupunktSebastian,
- lMenupunktMartin,
- lMenupunktPeter,
- lMenupunktFrank,
- lMenupunktYasmin,
- lMenupunktAnne,
- lMenupunktKevin,
- lMenupunktStefan
- ]
- this.init = function init() {
- var ebene1 = 0;
- var ebene2 = 0;
- var ebene3 = 0;
- for (var i=0; i<lMenupunkte.length; i++) {
- if (lMenupunkte[i].ebene == 1) {
- document.getElementById("selectBox1")[ebene1] = new Option(lMenupunkte[i].menuName, lMenupunkte[i].menuName);
- ebene1++;
- }
- else if (lMenupunkte[i].ebene == 2) {
- document.getElementById("selectBox2")[ebene2] = new Option(lMenupunkte[i].menuName, lMenupunkte[i].menuName);
- ebene2++;
- }
- else if (lMenupunkte[i].ebene == 3) {
- document.getElementById("selectBox3")[ebene3] = new Option(lMenupunkte[i].menuName, lMenupunkte[i].menuName);
- ebene3++;
- }
- }
- }
- this.changeSelectBoxA = function changeSelectBoxA() {
- // Berechnen der Selectbox 1
- var ebene1 = 0;
- var ebene2 = 0;
- var ebene3 = 0;
- var regexEbene1 = new RegExp('^' + document.getElementById("input1").value.toLowerCase());
- document.getElementById("selectBox1").options.length = 0;
- document.getElementById("selectBox2").options.length = 0;
- document.getElementById("selectBox3").options.length = 0;
- document.getElementById("input2").value = "";
- document.getElementById("input3").value = "";
- for (var i=0; i<lMenupunkte.length; i++) {
- if (lMenupunkte[i].ebene == 1) {
- if (regexEbene1.test(lMenupunkte[i].menuName.toLowerCase())) {
- document.getElementById("selectBox1")[ebene1] = new Option(lMenupunkte[i].menuName, lMenupunkte[i].menuName);
- ebene1++;
- // Berechnung der Selectbox 2
- for (var x=0; x<lMenupunkte[i].childsMenupunkt.length; x++) {
- document.getElementById("selectBox2")[ebene2] = new Option(lMenupunkte[i].childsMenupunkt[x].menuName, lMenupunkte[i].childsMenupunkt[x].menuName);
- ebene2++;
- // Berechnen der Selectbox 3
- for (var y=0; y<lMenupunkte[i].childsMenupunkt[x].childsMenupunkt.length; y++) {
- document.getElementById("selectBox3")[ebene3] = new Option(lMenupunkte[i].childsMenupunkt[x].childsMenupunkt[y].menuName, lMenupunkte[i].childsMenupunkt[x].childsMenupunkt[y].menuName);
- ebene3++;
- }
- }
- }
- }
- }
- }
- this.changeSelectBoxB = function changeSelectBoxB() {
- // Berechnen der Selectbox 2
- var ebene1 = 0;
- var ebene2 = 0;
- var ebene3 = 0;
- var regexEbene2 = new RegExp('^' + document.getElementById("input2").value.toLowerCase());
- document.getElementById("selectBox1").options.length = 0;
- document.getElementById("selectBox2").options.length = 0;
- document.getElementById("selectBox3").options.length = 0;
- document.getElementById("input1").value = "";
- document.getElementById("input3").value = "";
- for (var i=0 ; i<lMenupunkte.length; i++) {
- if (lMenupunkte[i].ebene == 2) {
- if (regexEbene2.test(lMenupunkte[i].menuName.toLowerCase())) {
- document.getElementById("selectBox2")[ebene2] = new Option(lMenupunkte[i].menuName, lMenupunkte[i].menuName);
- ebene2++;
- // Berechnen der Selectbox 1
- var contains = false;
- for (var x=0; x<document.getElementById("selectBox1").options.length; x++) {
- if (document.getElementById("selectBox1").options[x].value == lMenupunkte[i].parentMenupunkt.menuName) {
- contains = true;
- }
- }
- if (!contains) {
- document.getElementById("selectBox1")[ebene1] = new Option(lMenupunkte[i].parentMenupunkt.menuName, lMenupunkte[i].parentMenupunkt.menuName);
- ebene1++;
- }
- // Berechnen der Selectbox 3
- for (var y=0; y<lMenupunkte[i].childsMenupunkt.length; y++) {
- document.getElementById("selectBox3")[ebene3] = new Option(lMenupunkte[i].childsMenupunkt[y].menuName, lMenupunkte[i].childsMenupunkt[y].menuName);
- ebene3++;
- }
- }
- }
- }
- }
- this.changeSelectBoxC = function changeSelectBoxC() {
- // Berechnen der Selectbox 3
- var ebene1 = 0;
- var ebene2 = 0;
- var ebene3 = 0;
- var regexEbene3 = new RegExp('^' + document.getElementById("input3").value.toLowerCase());
- document.getElementById("selectBox1").options.length = 0;
- document.getElementById("selectBox2").options.length = 0;
- document.getElementById("selectBox3").options.length = 0;
- document.getElementById("input1").value = "";
- document.getElementById("input2").value = "";
- for (var i=0; i<lMenupunkte.length; i++) {
- if (lMenupunkte[i].ebene == 3) {
- if (regexEbene3.test(lMenupunkte[i].menuName.toLowerCase())) {
- document.getElementById("selectBox3")[ebene3] = new Option(lMenupunkte[i].menuName, lMenupunkte[i].menuName);
- ebene3++;
- // Berechnen der Selectbox 2
- var contains = false;
- for (var x=0; x<document.getElementById("selectBox2").options.length; x++) {
- if (document.getElementById("selectBox2").options[x].value == lMenupunkte[i].parentMenupunkt.menuName) {
- contains = true;
- }
- }
- if (!contains) {
- document.getElementById("selectBox2")[ebene2] = new Option(lMenupunkte[i].parentMenupunkt.menuName, lMenupunkte[i].parentMenupunkt.menuName);
- ebene2++;
- }
- // Berechnen der Selectbox 3
- var contains = false;
- for (var x=0; x<document.getElementById("selectBox1").options.length; x++) {
- if (document.getElementById("selectBox1").options[x].value == lMenupunkte[i].parentMenupunkt.parentMenupunkt.menuName) {
- contains = true;
- }
- }
- if (!contains == true) {
- document.getElementById("selectBox1")[ebene1] = new Option(lMenupunkte[i].parentMenupunkt.parentMenupunkt.menuName, lMenupunkte[i].parentMenupunkt.parentMenupunkt.menuName);
- ebene1++;
- }
- }
- }
- }
- }
- }
- this.lMenupunktService = new MenupunktService();
- </script>
- </head>
- <body onload="lMenupunktService.init()">
- <input id="input1" type="text" maxlength="20" style="width: 100px;" onkeyup="lMenupunktService.changeSelectBoxA()"></input>
- <input id="input2" type="text" maxlength="20" style="width: 100px;" onkeyup="lMenupunktService.changeSelectBoxB()"></input>
- <input id="input3" type="text" maxlength="20" style="width: 100px;" onkeyup="lMenupunktService.changeSelectBoxC()"></input>
- <br />
- <select id="selectBox1" style="width: 100px;">
- </select>
- <select id="selectBox2" style="width: 100px;">
- </select>
- <select id="selectBox3" style="width: 100px;">
- </select>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement