teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

修正点の記載漏れを修正しました。

2021/05/30 10:55

投稿

hallen0225
hallen0225

スコア587

answer CHANGED
@@ -1,7 +1,8 @@
1
1
  修正点を箇条書きでお伝えします。
2
2
  - チェックボックスのチェックをつけ外しした際に関数を実行する場合は、onclickでなくonchangeです。
3
- - チェックボックスをクリックした時点でチェックボックスの値は変わるので、JSの6行目(```CB.checked = false;```)、8行目(```CB.checked = true;```)は不要です。
3
+ - チェックボックスをクリックした時点でチェックボックスの値は変わるので、JSの6行目(```CB.checked = false;```)、9行目(```CB.checked = true;```)は不要です。
4
4
  - (4行目)CB.checkedがtrueかどうかを返したいときは、```CB.checked == true;```が正解です。(=は代入演算子です)
5
+ - (5行目、8行目)none, blockは文字列ですので、''または""で括る必要があります。(括弧なしでnoneと書いてしまうと、noneという名前の変数という意味になってしまいます)
5
6
 
6
7
  以上の点を修正して、ソースは下記のようになります。
7
8
  ```HTML

1

修正後のHTMLの記載が抜けていたため追記しました。

2021/05/30 10:55

投稿

hallen0225
hallen0225

スコア587

answer CHANGED
@@ -1,10 +1,17 @@
1
1
  修正点を箇条書きでお伝えします。
2
2
  - チェックボックスのチェックをつけ外しした際に関数を実行する場合は、onclickでなくonchangeです。
3
3
  - チェックボックスをクリックした時点でチェックボックスの値は変わるので、JSの6行目(```CB.checked = false;```)、8行目(```CB.checked = true;```)は不要です。
4
- - CB.checkedがtrueかどうかを返したいときは、```CB.checked == true;```が正解です。(=は代入演算子です)
4
+ - (4行目)CB.checkedがtrueかどうかを返したいときは、```CB.checked == true;```が正解です。(=は代入演算子です)
5
5
 
6
- 以上の点を修正して、JSは下記のようになります。
6
+ 以上の点を修正して、ソースは下記のようになります。
7
+ ```HTML
8
+ <input type="checkbox" id="checkbox_1" checked="checked" onchange="click_display_div('checkbox_1','test')">
9
+ <label for="checkbox_1">checkbox1</label>
10
+ <div id="test">
11
+ <p>test</p>
12
+ </div>
7
13
  ```
14
+ ```JS
8
15
  function click_display_div(checkboxID, divID) {
9
16
  var CB = document.getElementById(checkboxID);
10
17
  var DIV = document.getElementById(divID);