JQuery.validationEngine表单验证插件(推荐)


Posted in Javascript onDecember 10, 2016

 一、说明

jQuery.validationEngine表单验证控件功能强大,自带了样式显示模式:

1.字符类型:非空验证、最大长度、最小长度、相等判断、数字和空格、数字和英文字母

2.数字类型:数字、整数、最大值、最小值

3.日期类型:日期(yyyy-MM-dd/ yyyy/MM/dd等)、日期+时间、最小日期、最大日期、日期时间段

4.业务字段:url、email、phone、ipv4;ciaoca版扩展支持:qq、邮政编码、身份证、汉字。

5.Ajax后台验证:支持全局扩展定义,后台可定义消息内容,但是没有回调处理的扩展。

6.其他自定义扩展。

二、相关文档

1.Git源代码地址:https://github.com/posabsolute/jQuery-Validation-Engine

2.中文文档API参考:http://code.ciaoca.com/jquery/validation-engine/

3.中文优化版 Ciaoca下载

4.Asp.NET Demo实例源代码地址:https://git.oschina.net/tiama3798/BootstrapBack_Demo/tree/JQuery.validationEngine

三、其他表单标签验证

1.引用:

<link href="~/Scripts/validation/validationEngine.jquery.css" rel="stylesheet" /> 
<script src="~/Scripts/validation/jquery.validationEngine.js"></script> 
<script src="~/Scripts/validation/jquery.validationEngine-zh_CN.js"></script> 
<script src="~/Scripts/validation/jquery.validationEngine.js"></script>

2.HTMl:

<div class="panel panel-default"> 
 <div class="panel-heading"> 
  <div class="panel-title">常用业务字段验证</div> 
 </div> 
 <div class="panel-body"> 
  <form role="form" id="form1" class="demoform" action="#"> 
   <div class="form-group"> 
    <label class="control-label">分类:</label> 
    <div class="select"> 
     <select class="form-control validate[required]" name="type"> 
      <option value="">==请选择==</option> 
      <option value="1">一星级</option> 
      <option value="2">二星级</option> 
      <option value="3">三星级</option> 
     </select> 
    </div> 
   </div> 
   <div class="form-group"> 
    <label class="control-label">多选框:</label> 
    <div> 
     <label class="checkbox-inline"> 
      <input class="validate[minCheckbox[2]]" type="checkbox" name="chb1" />一星级 
     </label> 
     <label class="checkbox-inline"> 
      <input class="validate[minCheckbox[2]]" type="checkbox" name="chb1" />二星级 
     </label> 
     <label class="checkbox-inline"> 
      <input class="validate[minCheckbox[2]]" type="checkbox" name="chb1" />三星级 
     </label> 
    </div> 
   </div> 
 
   <div class="form-group"> 
    <label class="control-label">单选框:</label> 
    <div> 
     <label class="radio-inline"> 
      <input class="validate[required]" type="radio" name="rad1" />男 
     </label> 
     <label class="radio-inline"> 
      <input class="validate[required]" type="radio" name="rad1" />女 
     </label> 
     <label class="radio-inline"> 
      <input class="validate[required]" type="radio" name="rad1" />其他 
     </label> 
    </div> 
   </div> 
 
   <div class="form-group"> 
    <label class="control-label">简介:</label> 
    <textarea class="form-control validate[required]"></textarea> 
   </div> 
   <div class="form-group"> 
    <label class="control-label"> 
     上传图片: 
    </label> 
    <div > 
     <input type="file" class="form-control validate[required]" /> 
    </div> 
     
   </div> 
   <div> 
    <br /><br /> 
    <input type="submit" class="btn btn-success" value="提交" /> 
   </div> 
  </form> 
 </div> 
</div>

3.Js:

$(function () { 
 /* 
 * 特别说明: 
 * 1.对于select标签,必须都指定value属性,没有可以指定空字符串 
 * 2.对于checkbox和radio验证失败消息,显示在第一个按钮附近 
 */ 
 //自定义错误显示位置 
 $('.demoform').validationEngine({ 
  promptPosition: 'bottomRight', 
  addPromptClass: 'formError-white' 
 }); 
});

显示结果:

JQuery.validationEngine表单验证插件(推荐)

三、Ajax后台验证实例:

1.后台定义:

public JsonResult Exists(string fieldId, string fieldValue) 
{ 
 if (fieldValue.Length > 3) 
  return Json(new object[] { fieldId, true}); 
 return Json(new object[] { fieldId,false }); 
} 
public JsonResult GetInfoByCode(string fieldId, string fieldValue) 
{ 
 if (fieldValue.Length > 3) 
  return Json(new object[] { fieldId, true, "张三丰" }); 
 return Json(new object[] { fieldId, false, "验证失败" }); 
} 
public JsonResult GetByName(string fieldId, string fieldValue) 
{ 
 if (fieldValue.Length > 3) 
  return Json(new object[] { fieldId, true, "后台验证成功", new { 
   name="张三丰", 
   age=20 
  } }); 
 return Json(new object[] { fieldId, false, "验证失败,来自后台的消息" }); 
}

2.ajax验证方法扩展:

JQuery.validationEngine表单验证插件(推荐)

3.HTML定义:

<div class="panel panel-default"> 
 <div class="panel-heading"> 
  <div class="panel-title">Ajax后台验证</div> 
 </div> 
 <div class="panel-body"> 
  <form role="form" id="form1" class="demoform" action="#"> 
   <div class="form-group"> 
    <label class="control-label">昵称:</label> 
    <input class="form-control validate[required,ajax[ajaxNickName]]" name="nickname" /> 
   </div> 
   <div class="form-group"> 
    <label class="control-label">编号:</label> 
    <input class="form-control validate[required,ajax[ajaxCode]]" name="code" value="12" /> 
   </div> 
   <div class="form-group"> 
    <label class="control-label">编号:</label> 
    <input class="form-control validate[required,ajax[ajaxName]]" name="code" value="12" /> 
   </div> 
   <div> 
    <input type="submit" class="btn btn-success" value="提交" /> 
   </div> 
  </form> 
 </div> 
</div>

4.JS

/* 
* 特别说明: 
* 1.ajax验证规则或其他扩展验证规则,可以扩充在jquery.validationEngine-zh_CN.js中 
* 2.ajax后台的返回json对象格式: 
* 返回数据内容:[String,Boolean] 
* 第一个值类型为 String,是接收到 fieldId 的值; 
* 第二个值类型为 Boolean,验证通过返回 true,不通过返回 false 
* 3.如果有第三个值可以作为‘消息内容显示', 
* 4.对于单个Ajax验证提交,没有提供回调处理等事件 
*/ 
//自定义错误显示位置 
$('.demoform').validationEngine({ 
 promptPosition: 'bottomRight', 
 //此属性,指定ajax提交表以及字段ajax验证的方式 
 ajaxFormValidationMethod: 'post', 
 //指定使用Ajax模式提交表单处理 
 ajaxFormValidation: true, 
 onAjaxFormComplete: function (status, form, json, options) { 
  console.info(status); 
  console.info(form); 
 }, 
 onBeforeAjaxFormValidation: function (form, options) { 
  console.info(form); 
 } 
});

显示结果:

JQuery.validationEngine表单验证插件(推荐)

以上所述是小编给大家介绍的JQuery.validationEngine表单验证插件(推荐),希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Javascript 相关文章推荐
My Desktop :) 桌面式代码
Dec 29 Javascript
跨浏览器的事件对象介绍
Jun 27 Javascript
jquery ajax 调用失败的原因示例介绍
Sep 27 Javascript
基于zepto.js实现仿手机QQ空间的大图查看组件ImageView.js详解
Mar 05 Javascript
神奇!js+CSS+DIV实现文字颜色渐变效果
Mar 16 Javascript
javascript 数组的定义和数组的长度
Jun 07 Javascript
详解vue父子组件间传值(props)
Jun 29 Javascript
微信小程序之蓝牙的链接
Sep 26 Javascript
vue实现点击选中,其他的不选中方法
Sep 05 Javascript
angularJs复选框checkbox选中进行ng-show显示隐藏的方法
Oct 08 Javascript
微信小程序实现商品属性联动选择
Feb 15 Javascript
微信小程序选择图片控件
Jan 19 Javascript
JS产生随机数的用法小结
Dec 10 #Javascript
基于JavaScript实现随机颜色输入框
Dec 10 #Javascript
BootStrap中
Dec 10 #Javascript
jQuery Ajax请求后台数据并在前台接收
Dec 10 #Javascript
JS 循环li添加点击事件 (闭包的应用)
Dec 10 #Javascript
JS实战篇之收缩菜单表单布局
Dec 10 #Javascript
javascript动画之磁性吸附效果篇
Dec 09 #Javascript
You might like
php面向对象全攻略 (八)重载新的方法
2009/09/30 PHP
提高PHP编程效率 引入缓存机制提升性能
2010/02/15 PHP
PHP查询数据库中满足条件的记录条数(两种实现方法)
2013/01/29 PHP
php中flush()、ob_flush()、ob_end_flush()的区别介绍
2013/02/17 PHP
PHP+jquery实时显示网站在线人数的方法
2015/01/04 PHP
PHP中使用php://input处理相同name值的表单数据
2015/02/03 PHP
PHP使用ffmpeg给视频增加字幕显示的方法
2015/03/12 PHP
PHP5.2中PDO的简单使用方法
2016/03/25 PHP
JavaScript高级程序设计 学习笔记 js高级技巧
2011/09/20 Javascript
JS获取地址栏参数的小例子
2013/08/23 Javascript
jQuery表单验证功能实例
2015/08/28 Javascript
javascript:void(0)是什么意思及href=#与href=javascriptvoid(0)的区别
2015/11/13 Javascript
vue jsx 使用指南及vue.js 使用jsx语法的方法
2017/11/11 Javascript
Angular项目从新建、打包到nginx部署全过程记录
2017/12/09 Javascript
vue 父组件调用子组件方法及事件
2018/03/29 Javascript
对vue事件的延迟执行实例讲解
2018/08/28 Javascript
vue绑定事件后获取绑定事件中的this方法
2018/09/15 Javascript
Angular4.x Event (DOM事件和自定义事件详解)
2018/10/09 Javascript
js中自定义react数据验证组件实例详解
2018/10/19 Javascript
微信小程序wx.navigateTo中events属性实现页面间通信传值,数据同步
2019/07/13 Javascript
如何在Vue中抽离接口配置文件
2019/10/31 Javascript
纯js+css实现仿移动端淘宝网站的弹出详情框功能
2019/12/29 Javascript
vue element table中自定义一些input的验证操作
2020/07/18 Javascript
python采用getopt解析命令行输入参数实例
2014/09/30 Python
python简单线程和协程学习心得(分享)
2017/06/14 Python
Django开发中复选框用法示例
2018/03/20 Python
python基于itchat模块实现微信防撤回
2019/04/29 Python
Python可变和不可变、类的私有属性实例分析
2019/05/31 Python
Tensorflow实现部分参数梯度更新操作
2020/01/23 Python
Python3 filecmp模块测试比较文件原理解析
2020/03/23 Python
python利用platform模块获取系统信息
2020/10/09 Python
大都会艺术博物馆商店:The Met Store
2018/06/22 全球购物
命名空间(namespace)和程序集(Assembly)有什么区别
2015/09/25 面试题
员工工作表扬信范文
2014/01/13 职场文书
小学生读书活动总结
2014/06/30 职场文书
Python基础 括号()[]{}的详解
2021/11/07 Python