JavaScriptによるyes, no判定dialogの作成方法について現役エンジニアが解説【初心者向け】

初心者向けにJavaScriptによるyes, no判定dialogの作成方法について現役エンジニアが解説しています。yes,no判定dialogは、JavaScriptのconfirmメソッドで作成することができます。confirmメソッドの書き方や使い方、判定dialogの作成方法について解説します。

TechAcademyマガジンは受講者数No.1のオンラインプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。

JavaScriptによるyes, no判定dialogの作成方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使って初心者向けに解説します。

そもそもJavaScriptについてよく分からないという方は、JavaScriptとは何なのかについて解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプJavaScript/jQuery講座の内容をもとにしています。

 

田島悠介

今回は、JavaScriptに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

JavaScriptによるyes, no判定dialogの作成方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

目次

 

確認ダイアログとは

確認ダイアログとは、ユーザーが何かの操作を行う際に確認で表示するポップアップのことをいいます。何か重要なデータの削除・保存ボタンなどを押下した時に確認ダイアログを挟むことが多いです。

削除・保存ボタンなどを押下した際に、そのまま削除・保存を実行される仕様になるとユーザーの誤操作によるボタン押下による削除・保存が実行されてしまう可能性があります。

ボタンの押下後に、一度確認ダイアログを挟むことで、ユーザーに対し実行における確認を挟むことができるため誤操作による実行も回避しやすくなり、ユーザーにとって親切な仕様となります。

確認ダイアログの形は様々です。今回は、以下のような最低限で手軽に確認ダイアログを実装する方法をご紹介します。

[PR] フロントエンドで挫折しない学習方法を動画で公開中

confirmメソッドの使い方

上記の形での確認ダイアログはJavaScriptのconfirmメソッドを使うことで実装ができます。

window.confirm('確認ダイアログに表示する文言');

これを実行することで確認ダイアログが表示されます。OKを選択した場合はtrueが、キャンセルを選択した場合はfalseが返ってきます。この返却値を利用して、実際にconfirmメドッドを仕様する際には以下の形で実行することが多いです。

let checkFlg = window.confirm('確認ダイアログに表示する文言');

このように実行することで、変数に確認ダイアログの結果を格納することができます。結果を元にif文などで処理を分けていく・・・という流れになります。

yes, no判定ができる確認ダイアログを作成してみよう

例として、保存ボタンを押すと「保存を実行してもよろしいですか?」という確認ダイアログを表示し、OKを押すと、「保存を実行しました。」という文言を表示し、キャンセルを押すと、「保存をキャンセルしました。」という文言を表示する機能を作成します。

JavaScript


document.getElementById("save").onclick = function() {
  let checkSaveFlg = window.confirm('保存を実行してもよろしいですか?');
  
  if(checkSaveFlg) {
    document.getElementById("saveResult").textContent = "保存を実行しました。";
  } else {
    document.getElementById("saveResult").textContent = "保存をキャンセルしました。";
  }
};

 

CodePen

 

まとめ

JavaScriptによるyes, no判定dialogの作成方法について解説しました。

window.confirm('確認ダイアログに表示する文言');

を実行することで確認ダイアログが実装できます。

筆者プロフィール

土田隼平(つちだしゅんぺい)

フリーのWebエンジニアです。
最近までは求人サービスや画像共有システム、ECサービスの開発・運用をやってました。

趣味はラジオ(特にオールナイトニッポンとJUNK)を聞くことや近所の散歩です。
今の最重要ミッションは「運動不足解消」です。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でもJavaScript・jQueryを使ったWebサービス公開を習得できるオンラインブートキャンプJavaScript/jQuery講座を開催しています。

挫折しない学習方法を知れる説明動画や、現役エンジニアとのビデオ通話とチャットサポート、学習用カリキュラムを体験できる無料体験も実施しているので、ぜひ参加してみてください。