質問するログイン新規登録
JavaScript

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

HTML

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

Q&A

2回答

3855閲覧

JavaScript 得点式の診断テスト

unipulin

総合スコア0

JavaScript

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

HTML

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

0グッド

0クリップ

投稿2021/10/26 07:36

0

0

初心者です。得点式の診断テストを作ろうとおもっています。問題は5問で選択肢は2つ、Aを選んだら10点、Bを選んだら5点というようにして5問の合計点数の結果ごとに違ったコメントを表示させたいです。どのようなコードを使えば良いのでしょうか。var 、prompt、alert、if等は知っています。初心者で右も左も分からない状態なので教えて頂けると幸いです。

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

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

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

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

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

BeatStar

2021/10/26 07:59 編集

> 初心者で右も左も分からない状態なので教えて頂けると幸いです。 無理です。仕様がまったく決まっていません。どのように教えろと? 今の質問では『小説を書きたいです。ジャンルはホラーです。誰か書き方とサンプルを教えてください』みたいなものです。書けば? と言いたくなりませんか? プログラミングは「こう書けばいい」というものではありません。 決まった形があってそれを書けばいいというものではありません。 ロジックを考えるのです。でも質問にある情報からはまったく何も読み取れません。 > 問題は5問で選択肢は2つ 完全に固定? それともランダムにやるの? それと問題は追加される予定はないの? > 得点式の診断テストを作ろうとおもっています どのように出力したりするの? たとえば、画像とかでやるのか、単純にテキストボックスかなんかで入力していくタイプ? それとも一問一問? つまり、https://english.005net.com/mondai/be_kote1.php みたいに一括で表示していくスタイル(実際にはこれに入力を受け付けるやつを置く)なのか、https://one.hpplus.jp/fortune/mental/1366 のような感じで一問解いてからじゃないと次に進めないタイプなのかとかでも違う。 それに入力を受け付けるやつは何を想定していますか? 完全に記述タイプなら inputタグで"text"だし、選択式ならチェックボックスだし。 単純に考えてもこれぐらいはあります。そりゃ、質問者さんからしたら「当たり前」でも私らは赤の他人です。赤の他人の頭の中を覗けません。なので提示された情報からしか読み取れません。 とりあえず、仕様をちゃんと決めてください。
unipulin

2021/10/26 08:22

説明が至らず申し訳ありません、仰る通りです。 選択肢が書いてある画像を表示し、promptで1問ずつ、1か2かを入力させて次の問題に進むものを考えています。問題が5問で選択肢が2択は完全に固定です。得点に関しては1問ずつ表示はせずに、5問の回答が終わってから合計得点を表示する形です。
BeatStar

2021/10/26 08:32

> 選択肢が書いてある画像を表示し、promptで1問ずつ これはどういう感じでしょうか。あまりイメージがないので。 近いイメージのサイトってありますか? それか絵でもいいのでイメージをもっとわかりやすく出来ませんか? 画像とpromptは関係がありますか? (ユーザ目線で) 単にHTML側で画像を表示してそれの答えをpromptに入力するだけでいいのでしょうか。 (たとえばpromptに画像を表示したいとか。可能かどうかは別として)
yambejp

2021/10/26 09:45

1ページ内で済ますか、次のページの飛ぶかによって仕様が変わります 一度選んだものを選び直す必要はないですか?
unipulin

2021/10/26 10:16

https://youtu.be/bNtyTGBtbK4この動画の8:40で出ているものと同じ形になると思います。上に1.2を入力してくださいと記して四角の中に入力してもらう形です。 画像はhtml側で表示してそれの答えをpromptで入力するだけです。高校の課題なのですごく初歩的なものだと思います。 1ページ内で済ますつもりで、選び直しの必要はないです。
yambejp

2021/10/26 10:22

選択肢を選ばせる設問にpromptは出番がありません 回答してあるのでいちど確認してみてください
unipulin

2021/10/28 06:19

サンプルを送ってくださったの見落としていましたありがとうございます。この課題の条件が順次処理や分岐を入れるものだったので授業で習ったpromptで考えていました。promptであれば1ページ内で何回も問題を出せると思うので1ページ内で済ますと回答したのですが、1問ごとに選択肢を記載した画像を差し込みたいと思っているので、送ってくださったサンプルのような形のものであれば1問ごとに次のページに飛ぶ形になるのだと思います。説明と理解力に乏しく申し訳ありません。
guest

回答2

0

sample

javascript

1<script> 2window.addEventListener('DOMContentLoaded', ()=>{ 3 document.querySelector('#btn').disabled=true; 4 document.querySelector('#btn').addEventListener('click',()=>{ 5 const point=[...document.querySelectorAll('.q:checked')].map(x=>parseInt(x.value)).reduce((x,y)=>x+y); 6 alert(point); 7 }); 8}); 9document.addEventListener('change',()=>{ 10 if(document.querySelectorAll('.q:checked').length>=5){ 11 document.querySelector('#btn').disabled=false; 12 } 13}); 14</script> 15<form> 16<fieldset> 17<legend>Q1</legend> 18<label><input type="radio" name="q1" class="q" value="10">A</label> 19<label><input type="radio" name="q1" class="q" value="5">B</label> 20</fieldset> 21<fieldset> 22<legend>Q2</legend> 23<label><input type="radio" name="q2" class="q" value="10">A</label> 24<label><input type="radio" name="q2" class="q" value="5">B</label> 25</fieldset> 26<fieldset> 27<legend>Q3</legend> 28<label><input type="radio" name="q3" class="q" value="10">A</label> 29<label><input type="radio" name="q3" class="q" value="5">B</label> 30</fieldset> 31<fieldset> 32<legend>Q4</legend> 33<label><input type="radio" name="q4" class="q" value="10">A</label> 34<label><input type="radio" name="q4" class="q"s value="5">B</label> 35</fieldset> 36<fieldset> 37<legend>Q5</legend> 38<label><input type="radio" name="q5" class="q" value="10">A</label> 39<label><input type="radio" name="q5" class="q" value="5">B</label> 40</fieldset> 41<input type="button" value="評価" id="btn"> 42</form>

投稿2021/10/26 09:57

yambejp

総合スコア118073

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

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

yambejp

2021/10/28 06:32 編集

> 1問ごとに次のページに飛ぶ であれば、cookieやlocalstorageを利用ください ページの遷移をする場合は戻る処理をされたときにどうするかも決めておく必要があるでしょう
guest

0

「得点式の診断テスト javascript」でググるといろいろ出てくると思います。
1番目にあったこちらは比較的わかりやすいのではないでしょうか。

jQuery入門講座 診断系コンテンツ-点数計算

投稿2021/10/26 08:19

Lhankor_Mhy

総合スコア37584

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.30%

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

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

質問する

関連した質問