Vraag : Het dynamische Element van de Vorm

Ik heb de volgende HTMLvorm en javascript die ik op het Web opnam. Ik heb het aangepast aan het punt waar het alle werken met uitzondering van één stuk. Wanneer u Plaats 3 selecteert en op of checkbox klikt van de Boekhouding of van het Beheer leidt het gebied dynamisch tot de linkerzijde en trekt de tweede waarde als het uit zou moeten. Nochtans, wanneer u selecteert checkbox van de Marketing niet hieronder zal functioneren als de eerste twee code items.

See, kan iedereen helpen?

1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
var FORM_MANAGER_CONDITION_SEPARATOR = „EN“;
var FORM_MANAGER_POSSIBILITY_SEPARATOR = „OF“;
var FORM_MANAGER_NAME_VALUE_SEPARATOR = „ZIJND“;
VAR FORM_MANAGER_DEPENDS = „HANGT AF VAN“;
VAR FORM_MANAGER_CONFLICTS = „CONFLICTEN MET“;
var FORM_MANAGER_EMPTY = „LEEG“;

addEvent functie (Gr, ev, F) {
  als (el.addEventListener)
    el.addEventListener (ev, vals F,);
  als anders (el.attachEvent) {
    var t = functie () {
      f.apply (Gr);
    };
    addEvent.events.push ({„element“: Gr, „gebeurtenis“: ev, „manager“: F});
    el.attachEvent ("aan" + ev, t);
  } anders
    Gr ["aan" + ev] = F;
}

functie addEvents (els, evs, F) {
  voor (var i = 0; i < els.length; ++i)
    voor (var j = 0; j < evs.length; ++j)
      addEvent (els [I], evs [j], F);
}

addEvent.events = [];

als (typeof window.event! == „niet gedefiniëerd“)
  addEvent (het venster, „maakt“, functie leeg () {
      voor (var i = 0, e = addEvent.events; i < e.length; ++i)
        e [I] .element.detachEvent ("aan" + e [I] .event, e [I] .handler);
    }
  );

functie getRadioValue (Gr) {
  als (! el.length) ongeldige terugkeer;
  voor (var i = 0; i < el.length; ++i)
    als (Gr [I] .checked) terugkeer Gr [I] .value;
  ongeldige terugkeer;
}

functie getSelectValue (Gr) {
  als (! el.tagName  || el.tagName.toLowerCase ()! == „selecteer“)
    keer ongeldig terug;
  keer el.options [el.selectedIndex] .value terug;
}

functie isElementValue (Gr, v) {
  als (v === FORM_MANAGER_EMPTY) v = '';
  terugkeer (
    getRadioValue (Gr) == v ||
    getSelectValue (Gr) == v ||
    (
      el.tagName &&
      el.tagName.toLowerCase ()! == „selecteer“ &&
      el.value == v
    )
  );
}

functie setupDependencies () {
  var showEl = functie () {
    this.style.display = "";
    als (this.parentNode.tagName.toLowerCase () == „etiket“)
      this.parentNode.style.display = "";
  };
  var hideEl = functie () {
    this.style.display = „niets“;
    als (typeof this.checked! == „niet gedefiniëerd“) this.checked = vals;
    anders this.value = "";
    als (this.parentNode.tagName.toLowerCase () == „etiket“)
      this.parentNode.style.display = „niets“;
    this.hidden = waar;
  };
  var calcDeps = functie () {
    voor (var i = 0, e = this.elements; i < e.length; ++i) {
      e [I] .hidden = vals;
      voor (var j = 0, F = e [I] .className.split (FORM_MANAGER_CONDITION_SEPARATOR); j < f.length; ++j)
        als (F [j] .indexOf (FORM_MANAGER_DEPENDS) === 0) {
          voor (var k = 0, g = F [j] .substr (FORM_MANAGER_DEPENDS.length) .split (FORM_MANAGER_POSSIBILITY_SEPARATOR); k < g.length; ++k)
            als (g [k] .indexOf (FORM_MANAGER_NAME_VALUE_SEPARATOR) === -1) {
	      als (e [g [k]] &&e [g [k]]) onderbreking .checked;
            als anders (k + 1 == g.length)
                e [I] .hide ();
            } anders {
              var n = g [k] .split (FORM_MANAGER_NAME_VALUE_SEPARATOR),
                v = n [1];
              n = n [0];
	      als (e [n])
	        als (isElementValue (e [n], v)) onderbreking;
	        als anders (k + 1 == g.length) e [I] .hide ();
	    }
        } anders als (F [j] .indexOf (FORM_MANAGER_CONFLICTS) === 0) {
          als (F [j] .indexOf (FORM_MANAGER_NAME_VALUE_SEPARATOR) === -1) {
	    als (e [F [j] .substr (FORM_MANAGER_CONFLICTS.length)] && e [F [j] .substr (FORM_MANAGER_CONFLICTS.length)].checked) {
              e [I] .hide ();
              onderbreking;
            }
          } anders {
            var n = F [j] .substr (FORM_MANAGER_CONFLICTS.length) .split (FORM_MANAGER_NAME_VALUE_SEPARATOR),
              v = n [1];
            n = n [0];
            als (e [n]) {
              als (isElementValue (e [n], v)) {
                e [I] .hide ();
                onderbreking;
              }
            }
          }
        }
      als (! e [I] .hidden) e [I] .show ();
    }
  };
  var changeHandler = functie () {
    this.form.calculateDependencies ();
    ware terugkeer;
  };
  voor (var i = 0; i < arguments.length; ++i) {
    voor (var j = 0, e = window.document.forms [argumenten [I]] .elements; j < e.length; ++j) {
      addEvents ([e [j]], [„verandering“, „keyup“, de „nadruk“, „klikt“, „keydown“], changeHandler);
      e [j] .hide = hideEl;
      e [j] .show = showEl;
    }

    (e = window.document.forms [argumenten [I]]) .calculateDependencies = calcDeps;
    e.calculateDependencies ();
  }
}
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:




Untitled Document






Gelieve te selecteren uw campus en academische discipline.


  





ZIJN ZIJN ZIJN ZIJN ZIJN ZIJN ZIJN ZIJN ZIJN ZIJN ZIJN ZIJN ZIJN ZIJN ZIJN af ZIJN ZIJN af ZIJN " op de markt brengen " strijdig ZIJN strijdig ZIJN ZIJN ZIJN ZIJN ZIJN ZIJN ZIJN ZIJN ZIJN ZIJN ZIJN ZIJN ZIJN ZIJN ZIJN

Antwoord : Het dynamische Element van de Vorm

Daar gaat u die droevig het zouden moeten sorteren het hebben genomen het hadden me zo lang stumped voor een tijdje.
Alle beste,
Ian
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:





Andere oplossingen  
 
programming4us programming4us