回答編集履歴

2

追記2

2017/04/13 17:50

投稿

larkpia
larkpia

スコア138

test CHANGED
@@ -1,6 +1,6 @@
1
1
  $('input:checked').parent(); で <label>タグを示しています。
2
2
 
3
- なので、それの兄弟要素をとってやればOKです
3
+ なので、それの兄弟要素をとってやればOKです
4
4
 
5
5
 
6
6
 
@@ -25,3 +25,101 @@
25
25
  他の方のと投稿内容がかぶってしまいました。申し訳ありません。
26
26
 
27
27
  評価は先に解答した方にお願いします。
28
+
29
+
30
+
31
+ 追記2:
32
+
33
+ かぶったままなのも味気ないので、クラスを追加する方法も載せておきます。
34
+
35
+ クラス名に対応したcss(今回は .checed-hide に対するcss)をあらかじめ用意しておき、クラスを追加・削除することで、表示・非表示を入れ替えています。
36
+
37
+
38
+
39
+ ```HTML
40
+
41
+ <!DOCTYPE html>
42
+
43
+ <html>
44
+
45
+ <head>
46
+
47
+ <meta charset="utf-8">
48
+
49
+ <title>radio_acordion</title>
50
+
51
+ </head>
52
+
53
+ <style media="screen">
54
+
55
+ div.sampletext {display: block;}
56
+
57
+ div.checked-hide {
58
+
59
+ display: none;
60
+
61
+ }
62
+
63
+ </style>
64
+
65
+ <script src="https://code.jquery.com/jquery-3.2.1.js"></script>
66
+
67
+ <body>
68
+
69
+ <form action="" id="radio">
70
+
71
+ <div>
72
+
73
+ <label for="radio1"><input type="radio" name="radio" id="radio1">ラジオ1</label>
74
+
75
+ </div>
76
+
77
+ <!-- .checked-showをラジオボタンチェック時のみ表示したい -->
78
+
79
+ <div class="checked-hide sampletext">
80
+
81
+ <p>サンプルテキスト</p>
82
+
83
+ </div>
84
+
85
+
86
+
87
+ <div>
88
+
89
+ <label for="radio2"><input type="radio" name="radio" id="radio2">ラジオ2</label>
90
+
91
+ </div>
92
+
93
+ <!-- .checked-showをラジオボタンチェック時のみ表示したい -->
94
+
95
+ <div class="checked-hide sampletext">
96
+
97
+ <p>サンプルテキスト</p>
98
+
99
+ </div>
100
+
101
+ </form>
102
+
103
+ <script type="text/javascript">
104
+
105
+ $(function(){
106
+
107
+ $("input[type='radio']").on("change", function(){
108
+
109
+ $(".sampletext").addClass("checked-hide")
110
+
111
+ $(this).closest("div").next(".sampletext").removeClass("checked-hide")
112
+
113
+ })
114
+
115
+ })
116
+
117
+ </script>
118
+
119
+ </body>
120
+
121
+ </html>
122
+
123
+
124
+
125
+ ```

1

追記

2017/04/13 17:50

投稿

larkpia
larkpia

スコア138

test CHANGED
@@ -17,3 +17,11 @@
17
17
 
18
18
 
19
19
  ```
20
+
21
+
22
+
23
+ 追記:
24
+
25
+ 他の方のと投稿内容がかぶってしまいました。申し訳ありません。
26
+
27
+ 評価は先に解答した方にお願いします。