JavaScriptを使って、ユーザーに確認を求めるConfirm窓を表示し、OKボタンを押したときにだけ、Prompt窓を3回表示させる方法について解説します。また、キャンセルボタンが押された場合、背景色を黄色に変更し、計算を行わないメッセージを表示するプログラムを作成します。
1. ConfirmとPromptを使った基本的な流れ
まず、ユーザーに対して「計算を行いますか?」という確認をするConfirm窓を表示し、その後OKボタンが押されたときに数値を入力するPrompt窓を3回表示します。計算結果は合計と平均を表示します。キャンセルボタンがクリックされた場合は、計算は行わず、背景色を黄色に変えます。
2. コードの修正ポイント
質問のコードに必要な修正を加え、実際に動作するようにします。まず、Confirm窓を表示し、その後OKボタンが押された場合のみPrompt窓を表示するようにします。そして、Prompt窓を使って数値を3回入力させ、それらの合計と平均を表示します。
2.1. Confirm窓とPrompt窓を連携させる
最初にConfirm窓を表示し、ユーザーがOKを押した場合にだけ、Prompt窓を3回表示する処理を追加します。次に、入力された数値を合計し、平均を計算して表示します。
2.2. キャンセルの場合の処理
Confirm窓でキャンセルを選んだ場合、背景色を黄色に変え、「計算は行いません」というメッセージを表示します。
3. 修正後のコード例
以下の修正されたコードは、Confirm窓とPrompt窓を連携させ、キャンセル時の処理も追加しています。
<html>
<head>
</head>
<body>
<script type="text/JavaScript">
// 最初にConfirm窓を表示
let isConfirmed = confirm("計算を行いますか?");
if (isConfirmed) {
// OKボタンがクリックされた場合
let sum = 0;
let qnt = 3;
for (let i = 0; i < qnt; i++) {
let v = +prompt("数値を入力");
sum += v;
}
let ave = sum / qnt;
alert("合計:" + sum + "\n平均:" + ave);
} else {
// キャンセルボタンがクリックされた場合
document.body.style.backgroundColor = "yellow";
alert("計算は行いません");
}
</script>
</body>
</html>
4. まとめ: 確認と入力の連携処理
このコードでは、Confirm窓を使って計算を行うかどうかを確認し、OKが選ばれた場合のみPrompt窓を使って数値を入力し、合計と平均を計算しています。キャンセルが選ばれた場合は、計算をスキップして背景色を変更し、メッセージを表示します。
このように、JavaScriptを使うことで、ユーザーの入力をコントロールし、インタラクティブなWebページを作成することができます。プログラムのフローを制御するためにConfirmやPromptなどのダイアログを使う方法を覚えておくと便利です。


コメント