
入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして、アラートを出したいです。
下記のコードはメールアドレスの入力フォームのコードで、入力欄が空の時にボタンをクリックすると、アラートによるエラー表示がでるようになっています。これを、このフォームをさらに
入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして、アラートを出したいです。
どうコードを書いたら良いでしょうか?
回答よろしくお願いします。
<!DOCTYPE html>
<html lang="ja">
<head>
<meta content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="mouthlp.css">
<title></title>
<style>
/* 入力フォームの位置 */
.auto-style1 {
text-align: center;
}
</style>
</head>
<body>
<!--javaによるエラー表示のためid="form"を追加-->
<form action="LPmouth1.php" method="post" id="form">
<div class="auto-style1">
<p class="tel-titile">
メールアドレス:※
</p>
<input type="text" class="email" name="email" id="email"
value="" />
</div>
<div class="auto-style1010">
<!--classを2つ追加 example8、画像の大きさ指定 button-simple yureru-sは左右に動くアニメーション-->
<button type="submit" id="submit" name="submit" class="auto-style40" value="submit">
<img src="image/25mouth.png" alt="確認画面へ" class="button-simple yureru-s example80" /></button>
</div>
</form>
<div class="kuuhaku30"></div><!--空白の設定-->
<script>
// javaでエラーメッセージの表示
const key = 'date_key';
const form = document.querySelector('#form');
const email = document.querySelector('#email');
form.addEventListener('submit', function(event) {
let msg = "";
if (email.value == "") msg += "メールアドレスが入力されていません。\n";
if (msg != "") {
event.preventDefault();
alert(msg);
}
});
form.addEventListener('change', function() {
if (email.value != "") sessionStorage.setItem('email', email.value);
});
email.value = sessionStorage.getItem('email');
</script>
</body>
</html>
No.2ベストアンサー
- 回答日時:
No1です。
>提示コードに以下を追加しても、反応しないのですが
補足でご提示のスクリプトは中途半端な断片なので、何がどうなっているのか不明です。
雰囲気的には、その範囲に文法上おかしな点は特に見当たりませんが、どこかでエラーが発生していたりしませんか?
あるいは、エラーがないなら、何を期待してどのような結果になっているのですか?
ご提示のスクリプトは、期待した条件で実行されるようになっているのでしょうか?
(その部分が実行されていないとかでは?)
あるいは、email.value は正しく内容が保持できていますか?
(内容がおかしくなっているなど)
例えば、以下を実行してみれば、
const
email = { value: 'hogehoge@fugafuga.co.jp' },
email2 = { value: 'hoge@hoge@fugafuga.co.jp' },
reg = /^[A-Za-z0-9]{1}[A-Za-z0-9_.-]*@{1}[A-Za-z0-9_.-]{1,}.[A-Za-z0-9]{1,}$/;
alert( reg.test(email.value) ); // → true
alert( reg.test(email2.value) ); // → false
となります。
No.1
- 回答日時:
こんにちは
普通のチェックだけで良いのなら
<input type="email" required />
を使用すれば、面倒なことは不要になります。
https://developer.mozilla.org/ja/docs/Web/HTML/E …
アドレスチェックの正規表現はいろいろあるようですが、厳密にやるとそれなりに長くなります。
input要素のpattern属性を利用すれば、指定パターンでチェックすることが可能です。
https://developer.mozilla.org/ja/docs/Web/HTML/E …
もしも自前でチェックしたいのなら、以下あたりをご参考に。
https://www.wp-benricho.com/email-address-99/
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
スマホ上で、左右スワイプで次...
-
ボタンを押したあとに画像を表...
-
ラジオボタンを複数選択したと...
-
鍵盤アプリで、スマホの画面に...
-
画面遷移を行わずに同一ページ...
-
jsで質問です。 formをsubmitし...
-
プログラムについて。
-
var exports = exports || {}; ...
-
clear機能を失わずにファイルア...
-
イラストレーター、縦中横のシ...
-
正規表現について質問です。条...
-
jsで、配列内の文章を改行する...
-
タグを教えてください。
-
2025年相性がいい人のサイトの...
-
CookieをWebStoeageに変える
-
Adobe acrobat proでフォームを...
-
Outlookのアカウントがあるとメ...
-
jqueryのselect2で検索欄の文字...
-
<tr>指定した表の行要素をボ...
-
食材の期限を管理するためにGAS...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
JavaScript 超初心者です。 Doc...
-
入力フォームの javascript で ...
-
親ページからインラインフレー...
-
画像をボタンのようにフォーカ...
-
submit時に違うページに飛びたい
-
指定したデータを別ページフォ...
-
[onClick]ボタンを押すことで入...
-
a.href の href を有効か無効に...
-
JQueryのpostメソッドでファイ...
-
パスワードをIPする際見えな...
-
JavaScript の 「showDialog」
-
商品ページのフォームのテキス...
-
ジャバスクリプトが動かない
-
ボタンにファイルリンクをつける
-
検索結果画面の値の引継ぎとr...
-
IE8で動くログイン画面が、Fire...
-
Mac(Safari)でのSendkyesコマン...
-
小数点の計算について
-
別サーバーから背景画像呼び出し
-
ボタンで、リンクを、別ウィン...
おすすめ情報
回答ありがとうござます。どうしてもjavasprictでメールを正規チェックしたいのですが、提示コードに以下を追加しても、反応しないのですが、どう書いたらよいでしょうか?
// javaでエラーメッセージの表示に以下を追加
const reg = /^[A-Za-z0-9]{1}[A-Za-z0-9_.-]*@{1}[A-Za-z0-9_.-]{1,}.[A-Za-z0-9]{1,}$/;
else if(!reg.test(email.value)){
msg +=("メールアドレスの形式が不正です。");