ホームページ > ウェブフロントエンド > jsチュートリアル > layui.jsで実装したフォームバリデーション機能の例

layui.jsで実装したフォームバリデーション機能の例

韦小宝
リリース: 2018-01-13 11:44:19
オリジナル
1658 人が閲覧しました

この記事では、layui.jsで実装されているフォーム検証機能を主に紹介し、layui.jsに基づいたイベント監視、検証、判定などの関連操作手法をサンプル形式で分析します。この記事へ 記事

この記事の例では、layui.jsで実装されたフォーム検証機能について説明します。参考のために皆さんと共有してください。詳細は次のとおりです:

この例は、テキスト ボックス、携帯電話、電子メール、テキストエリア、その他の形式で検証できます

まず、次のファイルを紹介します:

<script src="layui/layui.js"></script>
<script src="layui/lay/dest/layui.all.js"></script>
<link rel="stylesheet" href="layui/css/layui.css" rel="external nofollow" rel="external nofollow" >
ログイン後にコピー

HTML コード:

<form class="layui-form" action="">
 <p class="layui-form-item">
  <label class="layui-form-label">反馈主题</label>
  <p class="layui-input-block">
   <input name="title" class="layui-input" type="text" placeholder="请输入标题" autocomplete="off" lay-verify="title">
  </p>
 </p>
 <p class="layui-form-item">
  <label class="layui-form-label">姓名</label>
  <p class="layui-input-block">
   <input name="fname" class="layui-input" type="text" placeholder="请输入姓名" autocomplete="off" lay-verify="fname">
  </p>
 </p>
 <p class="layui-form-item">
  <label class="layui-form-label">手机</label>
  <p class="layui-input-block">
   <input name="phone" class="layui-input" type="tel" autocomplete="off" placeholder="请输入手机" lay-verify="phone">
  </p>
 </p>
 <p class="layui-form-item">
  <label class="layui-form-label">邮箱</label>
  <p class="layui-input-block">
   <input name="email" class="layui-input" type="text" autocomplete="off" placeholder="请输入邮箱" lay-verify="email">
  </p>
 </p>
 <p class="layui-form-item">
  <label class="layui-form-label">单选框</label>
  <p class="layui-input-block">
   <input name="sex" title="男" type="radio" checked="" value="男">
   <input name="sex" title="女" type="radio" value="女">
   <input name="sex" title="保密" type="radio" value="密">
  </p>
 </p>
 <!--<p class="layui-form-item layui-form-text">
  <label class="layui-form-label">普通文本域</label>
  <p class="layui-input-block">
   <textarea class="layui-textarea" placeholder="请输入内容">请输入内容</textarea>
  </p>
 </p>-->
 <p class="layui-form-item layui-form-text">
  <label class="layui-form-label">内容</label>
  <p class="layui-input-block">
   <textarea class="layui-textarea layui-hide" name="contact" id="LAY_demo_editor" lay-verify="contact"></textarea>
  </p>
 </p>
 <p class="layui-form-item">
  <p class="layui-input-block">
   <button class="layui-btn" lay-filter="demo2" lay-submit="">跳转式提交</button>
   <button class="layui-btn" lay-filter="demo1" lay-submit="">立即提交</button>
   <button class="layui-btn layui-btn-primary" type="reset">重置</button>
  </p>
 </p>
</form>
ログイン後にコピー

js 検証コード

<script>
layui.use([&#39;form&#39;, &#39;layedit&#39;, &#39;laydate&#39;], function(){
 var form = layui.form()
 ,layer = layui.layer
 ,layedit = layui.layedit
 ,laydate = layui.laydate;
 //自定义验证规则
 form.verify({
    title: function(value){
     if(value.length < 5){
      return &#39;标题至少得5个字符啊&#39;;
     }
    }, fname: function(value){
     if(value.length < 4){
      return &#39;请输入至少4位的用户名&#39;;
     }
    }, contact: function(value){
     if(value.length < 4){
      return &#39;内容请输入至少4个字符&#39;;
     }
    }
    ,phone: [/^1[3|4|5|7|8]\d{9}$/, &#39;手机必须11位,只能是数字!&#39;]
    ,email: [/^[a-z0-9._%-]+@([a-z0-9-]+\.)+[a-z]{2,4}$|^1[3|4|5|7|8]\d{9}$/, &#39;邮箱格式不对&#39;]
 });
 //创建一个编辑器
 layedit.build(&#39;LAY_demo_editor&#39;);
 //监听提交
 form.on(&#39;submit(demo1)&#39;, function(data){
  layer.alert(JSON.stringify(data.field), {
   title: &#39;最终的提交信息&#39;
  })
  return false;
 });
});
</script>
ログイン後にコピー

完全なサンプル コードは次のとおりです:





m.sbmmt.com layui 表单验证




<script> layui.use([&#39;form&#39;, &#39;layedit&#39;, &#39;laydate&#39;], function(){ var form = layui.form() ,layer = layui.layer ,layedit = layui.layedit ,laydate = layui.laydate; //自定义验证规则 form.verify({ title: function(value){ if(value.length < 5){ return &#39;标题至少得5个字符啊&#39;; } }, fname: function(value){ if(value.length < 4){ return &#39;请输入至少4位的用户名&#39;; } }, contact: function(value){ if(value.length < 4){ return &#39;内容请输入至少4个字符&#39;; } } ,phone: [/^1[3|4|5|7|8]\d{9}$/, &#39;手机必须11位,只能是数字!&#39;] ,email: [/^[a-z0-9._%-]+@([a-z0-9-]+\.)+[a-z]{2,4}$|^1[3|4|5|7|8]\d{9}$/, &#39;邮箱格式不对&#39;] }); //创建一个编辑器 layedit.build(&#39;LAY_demo_editor&#39;); //监听提交 form.on(&#39;submit(demo1)&#39;, function(data){ layer.alert(JSON.stringify(data.field), { title: &#39;最终的提交信息&#39; }) return false; }); }); </script>
ログイン後にコピー

上記がこの記事のすべての内容です。皆さんの Layui の学習に役立つことを願っています。 !

関連する推奨事項:

layuiファイルアップロード実装コード共有

Layuiに基づいた二次リンケージドロップダウン選択を実装するjquery

フロントエンドページング関数共有メソッドのLayUI実装

以上がlayui.jsで実装したフォームバリデーション機能の例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート