• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Javascriptを勉強中でメールフォームを作っているのですが、)

JavaScriptを使ったメールフォーム作成時の警告メッセージの表示方法

このQ&Aのポイント
  • JavaScriptを使用してメールフォーム作成中の問題について質問があります。
  • メールフォームの送信ボタンを押す際に、名前が空白の場合に警告メッセージを表示するために、JavaScriptの関数を使用しています。
  • 警告メッセージは表示されるのですが、処理が続行されてしまい、メールが送信されてしまいます。なぜreturnを使用しなければならないのか、理解できません。初心者ですので、教えていただけますか?

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

  • ベストアンサー
  • nine999
  • ベストアンサー率44% (512/1140)
回答No.2

処理を継続する、停止するには、return true / return false が必要です。 true や false はただの値です。しかし、returnは命令です。 check()内にあるreturn命令は、onsubmitの中に値を届けるだけが仕事です。 onsubmit内にあるrerurn命令によって、onsubmitの処理に対して命令を伝えています。そこが、trueやfalseだけでは、それをどういう命令で処理したいのか判らないのです。

その他の回答 (1)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

何年前の参考書かわかりませんが、いまどきformのactionにmailtoはないと思いますが・・・ さて、onsubmitにreturn を付ける理由は、そういう仕組みになっているからとしか 言いようがありません。 onXXXの戻り値によってその実行を制御する仕組みです。 もうすこし噛み砕いていうと、たとえば常に実行をとめたいなら <form onsubmit="return false">とすることですが、質問者さんの考え方だと <form onsubmit="false">となってしまいます。 これでは、どのタイミングで戻り値をうけていいかわからないですよね。 >check()の中ですでにfalseかtrueの値が出ている これはたんにcheck()関数が戻り値を返しているだけにすぎません。 formのonsubmitが戻り値を返さないと意味がありません。

関連するQ&A