• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:javascriptの勉強中です)

JavaScriptで数値入力を確認する方法について

このQ&Aのポイント
  • JavaScriptの勉強中で、switch文とif文を組み合わせて数値入力の確認を行いたいです。
  • 現在、数値を入力してもらい、入力された数値を表示することはできていますが、入力の確認画面でキャンセルした場合にアラートを表示する方法がわかりません。
  • アラートが表示されず入力された数値が表示されるため、入力確認のアラートを出す方法を教えていただけないでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • Ogre7077
  • ベストアンサー率65% (170/258)
回答No.2

confirm の戻り値を参照せずに if(true) としているので、 かならず「ありがとうございます」になってしまいます。 正しくは var confirmResult = confirm(...); if (confirmResult) { ... } else { ... } 余談ではありますが JavaScript にて null/undefined/0/'' の比較は、面倒くさい問題が起きがちです。 今回の範囲では大丈夫なのですが、できれば以下の様にすることをオススメします。 if (num === null) { // 厳格に null と判定する ... } else if (num === '') { // 厳格に 空の文字列と判定する ... } else { ... }

rossi46mail
質問者

お礼

回答ありがとうございます。 はじめに自分で色々と試していた時に、 nullでも ' ' 空の文字列でもうまくいかなくてNaN等、全部試していました。 今回のこのJavaScriptには当てはまりませんが、今後作る際に 色々なケースでの判定を予め追加しておけばいいんですね。 確かに、参考にしたサイトでも null/undefined/0/'' ここの質問や不具合が多かったです。 詳しく説明していただきありがとうございました。

その他の回答 (1)

  • maiko0318
  • ベストアンサー率21% (1483/6969)
回答No.1

なら default: if(confirm('入力内容はこちらでよろしいですか?')){ : else にしたらどうですか?

rossi46mail
質問者

お礼

回答ありがとうございます。 defaultで先にconfirmを出すのではなく、if文にすればよかったんですね。 confirmが先に処理されていたからif文はalertしか読み込まれていなかったんですね。 ありがとうございました。

関連するQ&A