jsはフォーム検証機能を実装します

jsはフォーム検証機能を実装します

この記事の例では、フォーム検証機能を実装するためのjsの具体的なコードを参考までに共有しています。具体的な内容は次のとおりです。

1. 使用される 3 つのイベント:

onfocus (フォーカス イベント)、onblur (フォーカス離脱イベント)、onkeyup (キー アップ イベント)

2. イベントを使用して関数をトリガーし、関数内の検証情報を実行します。

3. チェックフォームを使用して、フォームの内容が標準化されているかどうかを判断します。標準化されている場合は、送信ボタンでフォーム情報を送信できます。

単純な効果:

次の形式のコード:

<form action="demo.html" onsubmit="checkForm() を返す">
      <div>
      <div class="text">
           <p>ユーザー名</p>
           <input id="value" onfocus="shoeTips('hint','ユーザー名の長さは 6 未満にできません')" onblur="hint_hide()" onkeyup="hint()" type="text" Name="Userame" placeholder="ユーザー名" />
           <span id="ヒント"></span>
          </div>
         <div class="text">
           <p>パスワード</p>
           <input id="pass_value" onfocus="shoeTips('pass_hint','パスワードの長さは 6 未満にできません')" onblur="pass_hide()" onkeyup="checkPass()" type="password" name="password" placeholder="password" />
            <span id="pass_hint"></span>
            </div>
            <div class="text">
              <p>パスワードの確認</p>
              <input id="passpass_value" onfocus="shoeTips('passpass_hint','2 つのパスワードは一致している必要があります')" onblur="passpass_hide()" onkeyup="checkPassPass()" type="password" name="password" placeholder="パスワードの確認" />
              <span id="passpass_hint"></span>
           </div>
           <div class="text">
                    <p>メール</p>
                    <input id="email" onfocus="shoeTips('email_hint','メールの形式は正しい必要があります')" onblur="emailHide()" onkeyup="emailCheck()" type="email" name="email" placeholder="Email" />
                    <span id="email_hint"></span>
                </div>
                <div class="text">
                    <p>携帯電話番号</p>
                    <input id="phone" type="text" onfocus="shoeTips('phone_hint','11桁の電話番号')" onblur="phoneHide()" onkeyup="phoneCheck()" Name="Phone" placeholder="電話番号">
                    <span id="phone_hint"></span>
                </div>
                <div class="送信">
             <input type="submit" value="送信" />
         </div>
    </div>
</フォーム>

js の場合:

関数 shoeTips(spanId, tips) {
 var span = document.getElementById(spanId);
 span.innerHTML = ヒント;
}
/**
 * ユーザー名を確認 */
関数ヒント() {
 var 値 = document.getElementById("値").value;
 var ヒント = document.getElementById("ヒント");
 値の長さが6未満の場合
  hint.innerHTML = "ユーザー名が短すぎます";
  false を返します。
 } それ以外 {
  hint.innerHTML = "修飾ユーザー名";
  true を返します。
 }
}
 
関数hint_hide() {
 var ヒント = document.getElementById("ヒント");
 ヒント.innerHTML = "";
}
/**
 * パスワードを確認してください */
 
関数 checkPass() {
 var value = document.getElementById("pass_value").value;
 var ヒント = document.getElementById("pass_hint");
 値の長さが6未満の場合
  hint.innerHTML = "パスワードが短すぎます";
  false を返します。
 } それ以外 {
  hint.innerHTML = "パスワードの形式は適切です";
  true を返します。
 }
}
 
関数 pass_hide() {
 var ヒント = document.getElementById("pass_hint");
 ヒント.innerHTML = "";
}
/***
 * パスワードの確認 */
関数 checkPassPass() {
 var papavalue = document.getElementById("passpass_value").value;
 var value = document.getElementById("pass_value").value;
 var papahint = document.getElementById("passpass_hint");
 if(papavalue != value) {
  papahint.innerHTML = "2つのパスワードが一致しません";
  false を返します。
 } それ以外 {
  papahint.innerHTML = "";
  true を返します。
 }
}
 
関数passpass_hide() {
 var papahint = document.getElementById("passpass_hint");
 papahint.innerHTML = "";
}
/**
 * メールアドレスを確認 */
関数 checkEmail(strEmail) 
{      
    var emailReg = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/;
    if ( emailReg.test(strEmail) ) {
        true を返します。
    }
    それ以外 {
// alert("入力したメールアドレスの形式が正しくありません!");
        false を返します。
    }
};
関数emailCheck() {
 var emailValue = document.getElementById("email").value;
 var email_hint = document.getElementById("email_hint");
 var flag = checkEmail(emailValue);
 if(フラグ) {
  email_hint.innerHTML = "メールの形式は正しいです";
  true を返します。
 } それ以外 {
  email_hint.innerHTML = "メール形式エラー";
  false を返します。
 }
}
 
関数 emailHide() {
 var email_hint = document.getElementById("email_hint");
 email_hint.innerHTML = "";
}
/**
 * 携帯電話番号を確認してください */
関数 checkMobile( strMobile )
{ //13588888888
    var regu = /^[1][345678][0-9]{9}$/;
    var re = new RegExp(regu);
    if (re.test(strMobile)) {
        true を返します。
    }
    それ以外 {
        false を返します。
    }
};
関数phoneCheck() {
 var 電話 = document.getElementById("電話").value;
 var phone_hint = document.getElementById("phone_hint");
 var flag = checkMobile(電話);
 if(フラグ) {
  phone_hint.innerHTML = "電話番号の形式は正しいです";
  true を返します。
 } それ以外 {
  phone_hint.innerHTML = "電話番号の形式が正しくありません";
  false を返します。
 }
}
 
関数phoneHide() {
 var phone_hint = document.getElementById("phone_hint");
 電話ヒント.innerHTML = "";
}
 
関数 checkForm() {
 var flag = emailCheck() && checkPass() && checkPassPass() && hint() && phoneCheck();
 フラグを返します。
}

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • フォーム検証からのJavaScript戦略モードの使用の詳細な説明
  • Vue.js + Nuxt.js プロジェクトで Vee-validate フォーム検証を使用する
  • 登録ページのフォーム検証を完了する JavaScript の例
  • フォーム検証に JavaScript を使用する
  • Angularjs の指示を使用してフォーム検証を行う方法
  • AngularJs フォーム検証関数のサンプルコード
  • AngularJS 入門チュートリアル: フォーム検証の使用例
  • Vue.js フォーム検証プラグイン

<<:  Linux 上でプロジェクトをリリースするために Tomcat を展開するプロセスにおけるさまざまな問題と解決策

>>:  複数の値を返す MySQL ストアド プロシージャ メソッドの例

推薦する

MySQL バックアップ スクリプトの書き方

序文:データベースのバックアップの重要性は、特にデータの損失が深刻な結果を招く可能性がある実稼働環境...

MySQL でストアド プロシージャを作成し、ループでレコードを追加する方法

この記事では、例を使用して、MySQL でストアド プロシージャを作成し、ループでレコードを追加する...

IE9 のネイティブ ページ互換性の問題に対する解決策についての簡単な説明

序文最近、クライアントのネイティブページを引き継ぎました。顧客は、ページが IE9 以降のバージョン...

システム外のフォント参照とトランジション効果

コードをコピーコードは次のとおりです。 <span style="font-fami...

CSS3 タイムラインアニメーション

成果を達成する html <h2>CSS3 タイムライン</h2> <...

HTMLハイパーリンクタグAのTARGET属性の詳細な説明

ハイパーリンク <a> タグはリンク ポイントを表します。これは英語の単語「anchor...

MySQLデータベースのリアルタイムバックアップの知識ポイントを詳しく解説

序文リアルタイムのデータベース バックアップの必要性は非常に一般的です。MySQL 自体はレプリケー...

JavaScript のクロージャの問題の詳細な説明

クロージャは、純粋関数型プログラミング言語の伝統的な機能の 1 つです。クロージャをコア言語構造の不...

WeChatアプレットがフォーム検証を実装

WeChatアプレットフォームの検証、参考までに具体的な内容は次のとおりです。プラグインWxVali...

VMware仮想マシンにLinux(CentOS)をインストールするための詳細な構成手順

CentOS7をダウンロード私がダウンロードしたイメージはCentOS-7-x86_64-DVD-1...

MySQL にテーブルが存在するかどうかを確認し、それを一括で削除する方法

1. インターネットで長時間検索しましたが、判定表が存在するかどうかがわからなかったので、漠然と削除...

Uniapp は DingTalk スキャンコード ログイン サンプル コードを実装します

UniappにはDingTalk認証ログインがないため、この記事ではDingTalk QRコードログ...

dockerでlnmp環境を構築する方法

プロジェクトディレクトリを作成する php ディレクトリをコピーする次のプロジェクト構造を作成します...

div+cssとウェブ標準ページの利点

div 要素は、HTML ドキュメント内のブロックレベル コンテンツの構造と背景を提供するために使用...

Linuxディレクトリ構造の詳細な紹介

Linuxを学び始めるときは、まずLinuxの標準ディレクトリ構造を理解する必要があります。 / r...