回答編集履歴

1

chousei

2019/11/14 04:15

投稿

yambejp
yambejp

スコア114845

test CHANGED
@@ -1,3 +1,59 @@
1
1
  document_select.phpはrequiredされてセレクトボックスをなにか選択すればOKできますね
2
2
 
3
3
  動かないなら一度jsをすべて外してテストしてください
4
+
5
+
6
+
7
+ # 追記
8
+
9
+ なんかjsがエラーになってたので調整しました
10
+
11
+ 送らないsubboxをdisabledにすればいいです
12
+
13
+ ```javascript
14
+
15
+ document.addEventListener('DOMContentLoaded', function() {
16
+
17
+ var allSubBoxes = document.getElementsByClassName("subbox");
18
+
19
+ for( var i=0 ; i<allSubBoxes.length ; i++) {
20
+
21
+ allSubBoxes[i].style.display = 'none';
22
+
23
+ }
24
+
25
+ var mainBoxes = document.getElementsByClassName('pulldownset');
26
+
27
+ for( var i=0 ; i<mainBoxes.length ; i++) {
28
+
29
+ var mainSelect = mainBoxes[i].getElementsByClassName("mainselect");
30
+
31
+ mainSelect[0].onchange = function () {
32
+
33
+ var subBox = this.parentNode.getElementsByClassName("subbox"); // 同じ親要素に含まれる.subbox(※select要素に限らず、どんな要素でも構いません。)
34
+
35
+ for( var j=0 ; j<subBox.length ; j++) {
36
+
37
+ subBox[j].style.display = 'none';
38
+
39
+ subBox[j].disabled=true;
40
+
41
+ }
42
+
43
+ if( this.value ) {
44
+
45
+ var targetSub = document.getElementById( this.value ); // 「メインのプルダウンメニューで選択されている項目のvalue属性値」と同じ文字列をid属性値に持つ要素を得る
46
+
47
+ targetSub.style.display = 'inline';
48
+
49
+ targetSub.disabled=false;
50
+
51
+ }
52
+
53
+ }
54
+
55
+ }
56
+
57
+ });
58
+
59
+ ```