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 相关文章推荐
JavaScript prototype属性使用说明
May 13 Javascript
js的表单操作 简单计算器
Dec 29 Javascript
Ext中下拉列表ComboBox组件store数据格式用法介绍
Jul 15 Javascript
jquery使用正则表达式验证email地址的方法
Jan 22 Javascript
完美实现js选项卡切换效果(一)
Mar 08 Javascript
浅谈Node.js轻量级Web框架Express4.x使用指南
May 03 Javascript
Javascript快速实现浏览器系统通知
Aug 26 Javascript
微信小程序模板(template)使用详解
Jan 31 Javascript
vue项目中公用footer组件底部位置的适配问题
May 10 Javascript
Vue动态组件与异步组件实例详解
Feb 23 Javascript
基于jquery实现的tab选项卡功能示例【附源码下载】
Jun 10 jQuery
JS异步宏队列与微队列原理区别详解
Jul 02 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
咖啡店都有些什么常规豆子呢?有什么风味在里面
2021/03/04 咖啡文化
PHP中的加密功能
2006/10/09 PHP
Discuz板块横排显示图片的实现方法
2007/05/28 PHP
php面向对象全攻略 (九)访问类型
2009/09/30 PHP
PHP弹出对话框技巧详细解读
2015/09/26 PHP
PHP文件缓存smarty模板应用实例分析
2016/02/26 PHP
PHP的Yii框架中YiiBase入口类的扩展写法示例
2016/03/17 PHP
Yii框架参数化查询中IN查询只能查询一个的解决方法
2017/05/20 PHP
PHP+Ajax简单get验证操作示例
2019/03/02 PHP
Jquery选择器 $实现原理
2009/12/02 Javascript
Jquery图片滚动与幻灯片的实例代码
2013/04/08 Javascript
jQuery拖拽 &amp; 弹出层 介绍与示例
2013/12/27 Javascript
利用JS解决ie6不支持max-width,max-height问题的方法
2014/01/02 Javascript
JavaScript截取字符串的Slice、Substring、Substr函数详解和比较
2014/03/20 Javascript
jQuery学习笔记之jQuery原型属性和方法
2014/06/09 Javascript
jquery中的常见问题及快速解决方法小结
2016/06/14 Javascript
让编辑器支持word复制黏贴、截屏的js代码
2016/10/17 Javascript
浅析使用BootStrap TreeView插件实现灵活配置快递模板
2016/11/28 Javascript
angular.js中解决跨域问题的三种方式
2017/07/12 Javascript
AngularJs 延时器、计时器实例代码
2017/09/16 Javascript
基于node.js实现爬虫的讲解
2019/02/18 Javascript
ES5 模拟 ES6 的 Symbol 实现私有成员功能示例
2020/05/06 Javascript
vue+elementUI 实现内容区域高度自适应的示例
2020/09/26 Javascript
uniapp实现横向滚动选择日期
2020/10/21 Javascript
[44:26]DOTA2上海特级锦标赛主赛事日 - 2 胜者组第一轮#4EG VS Fnatic第二局
2016/03/03 DOTA
Python使用matplotlib绘图无法显示中文问题的解决方法
2018/03/14 Python
python中的逆序遍历实例
2019/12/25 Python
Django认证系统user对象实现过程解析
2020/03/02 Python
Python+kivy BoxLayout布局示例代码详解
2020/12/28 Python
使用CSS3制作版头动画效果
2020/12/24 HTML / CSS
PHP两种查询函数array/row的区别
2013/06/03 面试题
本科毕业生应聘求职信
2014/07/06 职场文书
关于读书的演讲稿500字
2014/08/27 职场文书
实习介绍信模板
2015/01/30 职场文书
阿里云日志过滤器配置日志服务
2022/04/09 Servers
超越Nginx的Web服务器caddy优雅用法
2022/06/21 Servers