【JavaScript】フォームの入力チェックができるライブラリ『Validatr』

validate-form-inputs-validatr

お問い合わせフォームなどの入力フォームで入力された値をチェックや未入力をチェックする事ができるJavaScriptライブラリ『Validatr』をご紹介します。

『Validatr』はjQueryをベースに開発され、MIT License にて公開さております。電子メール、数字、URL、日付、色などの入力に対してサポートされています。

ダウンロード

実装方法

ライブラリの読込み

『Validatr』はjQuery対応のライブラリなので稼動するためには「jQuery」が読み込まれていることが必要になります。基本的には、以下のライブラリを読込むことで『Validatr』を稼動することができます。

    <!-- jQuery -->
    <script src="jquery.js"></script>
     
    <!-- Include js plugin -->
    <script src="js/validatr.js"></script>

オプション設定・ライブラリの実行

『Validatr』を邸要するフォームを指定します。

jQuery(function ($) {  
    $('form').validatr();   
});  

HTML

表示するコンテンツのHTMLソースになります。inputタグにて指定されるtypeの内容に応じたチェックを行うことが出来ます。type には text, checkbox, radio, color, date, email, number, range, url などがあります。

必須項目については「required」をつけることで対応することできます。

    <form action="./">
      <label for="email">Email</label>
      <input type="email" id="email" name="email" required>
      <div>
        <input type="reset" class="btn" value="Reset">
        <input type="submit" value="Submit">
      </div>
    </form>

表示メッセージの編集

入力形式が間違っていますなどのエラーメッセージは英文になってますので、日本語にしたい場合は「validatr.js」内のメッセージ内容を書き換えるか、メッセージ用のJavaScriptを記述します。

最初に「validatr.js」の内容を書き換える場合は、以下のメッセージの文章を書き換えます。

/* validatr.js を直接書き換える場合 */

    $.validatr.messages = {
        checkbox: 'Please check this box if you want to proceed.',
        color: 'Please enter a color in the format #xxxxxx',
        email: {
            single: 'Please enter an email address.',
            multiple: 'Please enter a comma separated list of email addresses.'
        },
        pattern: 'Please match the requested format.',
        radio: 'Please select one of these options.',
        range: {
            base: 'Please enter a {{type}}',
            overflow: 'Please enter a {{type}} greater than or equal to {{min}}.',
            overUnder: 'Please enter a {{type}} greater than or equal to {{min}}<br> and less than or equal to {{max}}.',
            invalid: 'Invalid {{type}}',
            underflow: 'Please enter a {{type}} less than or equal to {{max}}.'
        },
        required: 'Please fill out this field.',
        select: 'Please select an item in the list.',
        time: 'Please enter a time in the format hh:mm:ss',
        url: 'Please enter a url.'
    };

「validatr.js」を編集しない場合、以下のようにメッセージを追加をします。

※「validatr.js」を読込んだ後に追加をします。

/* 新しくメッセージを追加する場合 */

(function ($) {
    $.extend($.validatr.messages, {
        checkbox: 'Please check this box if you want to proceed.',
        color: 'Please enter a color in the format #xxxxxx',
        email: {
            single: 'Please enter an email address.',
            multiple: 'Please enter a comma separated list of email addresses.'
        },
        pattern: 'Please match the requested format.',
        radio: 'Please select one of these options.',
        range: {
            base: 'Please enter a {{type}}',
            overflow: 'Please enter a {{type}} greater than or equal to {{min}}.', 
            overUnder: 'Please enter a {{type}} greater than or equal to {{min}}<br> and less than or equal to {{max}}.',
            invalid: 'Invalid {{type}}',
            underflow: 'Please enter a {{type}} less than or equal to {{max}}.'
        },
        required: 'Please fill out this field.',
        select: 'Please select an item in the list.',
        time: 'Please enter a time in the format hh:mm:ss',
        url: 'Please enter a url.'
    });
}(jQuery));

以上で、『Validatr』によるフォームの入力チェックを実装することができます。

関連記事

【JavaScript】ページ内リンクでページスクロールを実現する「smoothScroll.js」

「smoothScroll.js」は、ページ内リンクでページをスクロールを実装できすJavaScriptライブラリです。jQueryを実装していない状態でも稼働するので、手軽に導入できます。 基本的な使い方 導入は簡単、ライブラリを読み込むだけで実装でき、設置後は...続きを読む

2018.02.27HTMLコーディング

【WP】モバイル端末用にテーマを切り替えるプラグインのまとめ

先日のGoogleのウェブマスター向け公式ブログ「検索結果をもっとモバイルフレンドリーに」の記事にもあったように、モバイル端末によるウェブサイトの利用がシェアを伸ばしてきていることでウェブサイトのモバイル端末への最適化も重要な課題になってきていると思われます。 今回は、...続きを読む

2015.03.20WordPress

【デザイン】HTML5を使用したアニメーションサイト

HTML5より新しく登場した「Canvas」などによって、AdobeのFlashのような動的な2次元グラフィックを、HTML形式ファイルをベースに制作することができるようになりました。 今後、デザインとして設計されるのはもちろん、アニメーションやゲーム、WEBアプリケー...続きを読む

2015.02.16インスピレーション

藤枝おんぱく2019「No33.蓮華寺池公園を着物でおさんぽしながら カメラマンに学ぶ着物姿の撮り方」

藤枝おんぱく2019「No33.蓮華寺池公園を着物でおさんぽしながら カメラマンに学ぶ着物姿の撮り方」のプログラムの案内人をしました。 お気に入りの着物を着て、春の蓮華寺池公園界隈を散策しながら、人物撮影のテクニックを学ぶことができる写真の講座と街歩きを合わせたプログラムを...続きを読む

2019.05.05フォトギャラリー藤枝

【Bootstrap】テンプレートを使い作成するレスポンシブサイト

Twitterのデザイナーや開発者が作成した『Bootstrap』は、フロントエンドのフレームワークとオープンソースプロジェクトです。『Bootstrap』は、CSS、JS、およびフォントが基本セットになっています。HTMLのテンプレートソースを組み合わせて、レスポンシブ対応...続きを読む

2015.02.06BootstrapHTMLコーディング