Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

alert()とdocument.write()の挙動がおかしいです

解決したいこと

document.write()とalert()がうまく起動しません

解決方法を教えて下さい。

発生している問題・エラー

write()

invalid character

alert()

(message:any):void

該当するソースコード

<html>
<head>
<meta charset=UTF-8>
<!-- JavaScriptの処理を追加 -->
<script type="text/javascript">
  function check(){
    if (mail_form.mail.value == ""){
      //条件に一致する場合(メールアドレスが空の場合)
      alert("メールアドレスを入力してください");    //エラーメッセージを出力
    return false;    //送信ボタン本来の動作をキャンセルします
    }else{
    //条件に一致しない場合(メールアドレスが入力されている場合)
    write("テスト");
    return true;    //送信ボタン本来の動作を実行します
    }
  }
</script>
</head>
<body>
<form action="mailform.html" method="get" name="mail_form">
メールアドレス<input type="text" name="mail">
<!-- onClickイベントを追加 
<input type="submit" value="送信" onclick="return check()">
</form>
</body>
</html>

自分で試したこと(?)

“”と""が間違っていないか確認した。
‹›と<>が間違っていないか確認した。
初心者でごめんなさい。

0

誤:今夕食ができたので、食べてからにします。
正:今夕食ができたので、食べてから実践してみます。

0Like

意見交換ではなく、質問なので今後このようなケースはQ&A のフォーマットを使用するようにしてください。

元のコードを汲みつつ最低限動作するようにしてみました。
(遷移後のmailform.htmlは自身で用意してください)

sample.html
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>メールフォーム</title>
<script type="text/javascript">
  function check(){
    var mail = document.forms["mail_form"].mail.value;
    if (mail === ""){
      alert("メールアドレスを入力してください");
      return false;
    } else {
      console.log("テスト");
      return true;
    }
  }
</script>
</head>
<body>
<form action="mailform.html" method="get" name="mail_form">
  メールアドレス:<input type="text" name="mail">
  <!-- ↓onClickイベントを追加 -->
  <input type="submit" value="送信" onclick="return check()">
</form>
</body>
</html>

meta charset="UTF-8”>を修正
mail_form.mail.valueでの取得時に["mail_form"]を明示するよう修正
・メールアドレス判定時の「等価演算子」を「厳密等価演算子」に修正
write() => 恐らくdocument.write() だと思われる、は非推奨なので一旦console.log()に修正
onClickのコメントが閉じられていない為、修正
・不揃いのインデントを修正

他に書き方や気になる箇所は色々ありますが、あくまで最低限の修正です。
後はWinMerge等でご自身のコードと差分比較して学習に役立ててください。

誰でも最初は初心者なので謝る必要はありません、少しずつ学んでいきましょう。
もし、この回答内に「これはどういう意味だろう」等、気になることがあれば調べてみましょう。
一概に全てとは言えませんが、トライアンドエラーを繰り返し、調べながら色々試すことで自身の力になります。

2Like

Your answer might help someone💌