🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

2回答

1483閲覧

チェックボックスでカウントした数をChart.jsに反映させたいです。

beginner.tanaka

総合スコア23

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2020/11/28 09:31

前提・実現したいこと

4つのタイプに分けられたチェックボックスがあり、1つのタイプにつき4つのチェックボックスがあります。(タイプA〜D)
チェックをつけ、カウントボタンを押すと、それぞれのタイプに、いくつチェックをつけたかが表示されます。

各タイプのカウントされた数値をChart.jsのレーダーチャートに反映させたいのですが、
反映させる事ができません。
ご教授の程よろしくお願い致します

###現状できている点
レーダーチャートのdataに直接、値を入れると問題なく表示されます。
チェックボックスにチェックを入れた数は、タイプ別でカウントされます。

不明な点

チェックボックスのチェックをカウントした値を、どのようにしたらChart.jsに入れられるかがわかりません。

該当のソースコード

html

1<!DOCTYPE html> 2<html lang="en"> 3<head> 4 <meta charset="UTF-8"> 5 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 6 <title>Document</title> 7 <script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.9.4/Chart.min.js" integrity="sha512-d9xgZrVZpmmQlfonhQUvTR7lMPtO7NkZMkA0ABN3PHCbKA5nqylQ/yWlFAyY6hYgdF1Qh6nYiuADWwKB4C2WSw==" crossorigin="anonymous"></script> 8 <script> 9 window.addEventListener('DOMContentLoaded', ()=>{ 10 document.querySelector('#btn').addEventListener('click',()=>{ 11 var t1c=document.querySelectorAll('.t1:checked').length; 12 var t2c=document.querySelectorAll('.t2:checked').length; 13 var t3c=document.querySelectorAll('.t3:checked').length; 14 var t4c=document.querySelectorAll('.t4:checked').length; 15 16 document.querySelector('#resultA').textContent=`タイプAの数は${t1c}です`; 17 document.querySelector('#resultB').textContent=`タイプBの数は${t2c}です`; 18 document.querySelector('#resultC').textContent=`タイプCの数は${t3c}です`; 19 document.querySelector('#resultD').textContent=`タイプDの数は${t4c}です`; 20 21 }); 22 23 new Chart(document.getElementById("myChart"),{ 24 type: 'radar', 25 data: { 26 labels: ["タイプA", "タイプB", "タイプC", "タイプD"], 27 datasets: [{ 28 label: 'A_kun', 29 borderColor: "rgba(0,0,80,1)", 30 data: [3, 2, 3, 4] 31 }] 32 } 33 }) 34}); 35 </script> 36 37 38</head> 39<body> 40 <h3>タイプA</h3> 41 <label><input type="checkbox" class="t1">t1-1</label> 42 <label><input type="checkbox" class="t1">t1-2</label> 43 <label><input type="checkbox" class="t1">t1-3</label> 44 <label><input type="checkbox" class="t1">t1-4</label><br> 45 46 <h3>タイプB</h3> 47 <label><input type="checkbox" class="t2">t2-1</label> 48 <label><input type="checkbox" class="t2">t2-2</label> 49 <label><input type="checkbox" class="t2">t2-3</label> 50 <label><input type="checkbox" class="t2">t2-4</label><br> 51 52 <h3>タイプC</h3> 53 <label><input type="checkbox" class="t3">t3-1</label> 54 <label><input type="checkbox" class="t3">t3-2</label> 55 <label><input type="checkbox" class="t3">t3-3</label> 56 <label><input type="checkbox" class="t3">t3-4</label><br> 57 58 <h3>タイプD</h3> 59 <label><input type="checkbox" class="t4">t4-1</label> 60 <label><input type="checkbox" class="t4">t4-2</label> 61 <label><input type="checkbox" class="t4">t4-3</label> 62 <label><input type="checkbox" class="t4">t4-4</label><br> 63 64 <button id="btn" type="button">カウント</button> 65 66 <div id="resultA"></div> 67 <div id="resultB"></div> 68 <div id="resultC"></div> 69 <div id="resultD"></div> 70 <canvas id="myChart"></canvas> 71</body> 72</html>

よろしくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

自己解決

かっこのつける場所を修正したら、できました。

投稿2020/11/28 12:17

beginner.tanaka

総合スコア23

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

自分もすごく悩んでおり、もしよろしければどこを修正したらレーダーチャートに反映されるようになったのか教えていただけないでしょうか?

投稿2022/07/21 07:57

mi-i

総合スコア4

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問