引入参考最下面API

missingMessage:未填写时显示的信息
validType:验证类型见下示例
invalidMessage:无效的数据类型时显示的信息
required="true" 必填项
class="easyui-validatebox" 文本验证
class="easyui-numberbox" 数字验证
html
  1. 邮箱验证:<input type="text" validtype="email" required="true" missingMessage="不能为空" invalidMessage="邮箱格式不正确" /><br />
  2. 网址验证:<input type="text" validtype="url" invalidMessage="url格式不正确[http://www.example.com]" /><br />
  3. 长度验证:<input type="text" validtype="length[8,20]" invalidMessage="有效长度8-20" /><br />
  4. 手机验证:<input type="text" validtype="mobile" /><br />
  5. 邮编验证:<input type="text" validtype="zipcode" /><br />
  6. 账号验证:<input type="text" validtype="account[8,20]" /><br />
  7. 汉子验证:<input type="text" validtype="CHS" /><br />
  8. 远程验证:<input type="text" validtype="remote['checkname.aspx','name']" invalidMessage="用户名已存在"/>
js
  1. // easyui通用验证规则
  2. $.extend($.fn.validatebox.defaults.rules, {
  3. date: {
  4. validator: function (value) {
  5. var reg = /^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$/;
  6. return reg.test(value);
  7. },
  8. message: '日期格式不正确 YYYY-MM-DD'
  9. },
  10. integer: {
  11. validator: function (value) {
  12. var reg = /^[\-\+]?\d+$/;
  13. return reg.test(value);
  14. },
  15. message: '无效的整数'
  16. },
  17. number: {
  18. validator: function (value) {
  19. var reg = /^[\-\+]?((([0-9]{1,3})([,][0-9]{3})*)|([0-9]+))?([\.]([0-9]+))?$/;
  20. return reg.test(value);
  21. },
  22. message: '无效的数值'
  23. },
  24. mobile: {
  25. validator: function (value) {
  26. alert(123)
  27. var reg = /^1[3|4|5|8|9]\d{9}$/;
  28. return reg.test(value);
  29. },
  30. message: '输入手机号码格式不准确.'
  31. }
  32. })


  1. $.extend($.fn.validatebox.defaults.rules, {
  2. ajaxLookName: {//ajax验证
  3. validator: function (value) {
  4. $.post((baseURL+"/housemanage/nhousegroupdef/vaild/lookhousename"),{houseName:value},function(rec){
  5. if(rec.code == "0"){
  6. if(rec.data.result){
  7. $.fn.validatebox.defaults.rules.ajaxLookName.message='看房团名称已被其它用户定义过,请修改!';
  8. return false;
  9. }else{
  10. return true;
  11. }
  12. }else{
  13. alert(rec.desc);
  14. }
  15. },"json").error(function(){
  16. alert("请求失败!");
  17. });
  18. },
  19. message: ''
  20. }
  21. })

验证
  1. $($($addDiv).find("#addForm")).form('validate')//返回 true false

至于 要不要加 $('input[type=text]').validatebox();   使所有验证生效,api上说 设置了样式可以不必加,但是实际中和bootstarp集成中不能调用,一调用就出现莫名其妙的错误

最后说一下  easyui、不支持组合校验   渣渣  我也懒得自定义多种规则了  最多只能支持 一个必填 和 一个自定义验证
以上是正常的使用

与bootstarp使用的时候又出现各种奇葩问题

1.easyui js 要引两次
2.自定义的验证规则要写在第二次引easy ui 前面 否则不生效
3.自定义的ajax的规则不生效了,需要自己自定义 , 采用隐藏框吧
4.$('input[type=text]').validatebox();   使所有验证生效,api上说 设置了样式可以不必加,但是实际中和bootstarp集成中不能调用,一调用就出现莫名其妙的错误

第二种bug 代码
  1. <link rel="stylesheet" href="${baseURL}/js/3rd-plug/easy-ui-1.4.2/themes/black/easyui.css" type="text/css"/>
  2. <link rel="stylesheet" href="${baseURL}/js/3rd-plug/easy-ui-1.4.2/themes/icon.css" type="text/css"/>
  3. <script type="text/javascript" src="${baseURL}/js/3rd-plug/easy-ui-1.4.2/jquery.easyui.min.js"></script>
  4. <script type="text/javascript" src="${baseURL}/js/3rd-plug/easy-ui-1.4.2/locale/easyui-lang-zh_CN.js"></script>
  5. <script type="text/javascript" src="${baseURL}/js/3rd-plug/easy-ui-1.4.2/locale/common_validation-zh_CN.js"></script>
  6. <script>
  7. $.extend($.fn.validatebox.defaults.rules, {
  8. datecompare: {
  9. validator: function (value) {
  10. if($('#regEndtime').val()&&$('#regBegintime').val()>$('#regEndtime').val()){
  11. return false;
  12. }
  13. return true;
  14. },
  15. message: '报名开始时间不能大于报名截止时间,请修改!'
  16. },
  17. lookhousedatecompare: {
  18. validator: function (value) {
  19. if($('#regEndtime').val()&&$('#lookhousetime').val()<$('#regEndtime').val()){
  20. return false;
  21. }
  22. return true;
  23. },
  24. message: '看房时间必须大于报名截止时间,请修改!'
  25. },
  26. numcompare: {
  27. validator: function (value) {
  28. if($('#maxNum').val()&&$('#minNum').val()>$('#maxNum').val()){
  29. return false;
  30. }
  31. return true;
  32. },
  33. message: '成团最低人数必须不能大于成团最高人数,请修改!'
  34. }
  35. })
  36. </script>
  37. <script type="text/javascript" src="${baseURL}/js/3rd-plug/easy-ui-1.4.2/jquery.easyui.min.js"></script>

如上图   自定义验证规则要引在第二次前面

第三种bug 代码 

  1. $("#lookhousegroupName").on("blur",function(){
  2. if($("#lookhousegroupName").hasClass("validatebox-invalid")){
  3. return;
  4. }
  5. $.post((baseURL+"/housemanage/nhousegroupdef/vaild/lookhousename"),{houseName:($(this).val())},function(rec){
  6. if(rec.code == "0"){
  7. if(rec.data.result){
  8. $("#lookhousegroupNameajax").val("0");
  9. return false;
  10. }else{
  11. $("#lookhousegroupNameajax").val("1");
  12. }
  13. }else{
  14. alert(rec.desc);
  15. }
  16. },"json").error(function(){
  17. alert("请求失败!");
  18. });
  19. })

如上 $("#lookhousegroupName").hasClass("validatebox-invalid") 加上这句 , 是要等元素验证通过后 再调用ajax,防止不必要的多余验证



最后贴上  api

通过 $.fn.validatebox.defaults 重写默认的 defaults。

验证框(validatebox)是为了验证表单输入字段而设计的。如果用户输入无效的值,它将改变背景颜色,显示警告图标和提示消息。验证框(validatebox)可与表单(form)插件集成,防止提交无效的字段。


依赖

  • tooltip

用法

从标记创建验证框(validatebox)。

  1. <input id="vv" class="easyui-validatebox" data-options="required:true,validType:'email'">

使用 javascript 创建验证框(validatebox)。

  1. <input id="vv">
  1. $('#vv').validatebox({
  2. required: true,
  3. validType: 'email'
  4. });

检查密码和重新输入密码是相同的。

  1. // extend the 'equals' rule
  2. $.extend($.fn.validatebox.defaults.rules, {
  3. equals: {
  4. validator: function(value,param){
  5. return value == $(param[0]).val();
  6. },
  7. message: 'Field do not match.'
  8. }
  9. });
  1. <input id="pwd" name="pwd" type="password" class="easyui-validatebox" data-options="required:true">
  2. <input id="rpwd" name="rpwd" type="password" class="easyui-validatebox"
  3. required="required" validType="equals['#pwd']">

验证规则

验证规则是通过使用 required 和 validType 属性来定义的,这里是已经实施的规则:

  • email:匹配 email 正则表达式规则。
  • url:匹配 URL 正则表达式规则。
  • length[0,100]:允许从 x 到 y 个字符。
  • remote['http://.../action.do','paramName']:发送 ajax 请求来验证值,成功时返回 'true' 。

要自定义验证规则,重写 $.fn.validatebox.defaults.rules,来定义一个验证函数和无效的信息。例如,定义一个 minLength 验证类型:

  1. $.extend($.fn.validatebox.defaults.rules, {
  2. minLength: {
  3. validator: function(value, param){
  4. return value.length >= param[0];
  5. },
  6. message: 'Please enter at least {0} characters.'
  7. }
  8. });

现在您可以使用这个 minLength 验证类型来定义一个至少输入5个字符的输入框:

  1. <input class="easyui-validatebox" data-options="validType:'minLength[5]'">

属性

名称 类型 描述 默认值
required boolean 定义是否字段应被输入。 false
validType string,array 定义字段的验证类型,比如 email、url,等等。可能的值:
1、验证类型字符串,应用单个验证规则。
2、验证类型数组,应用多个验证规则。单个字段上的多个验证规则自版本 1.3.2 起可用。

代码实例:
  1. <input class="easyui-validatebox" data-options="required:true,validType:'url'">
  2. <input class="easyui-validatebox" data-options="
  3. required:true,
  4. validType:['email','length[0,20]']
  5. ">
null
delay number 延迟验证最后的输入值。该属性自版本 1.3.2 起可用。 200
missingMessage string 当文本框为空时出现的提示文本。 该字段是必需的。
invalidMessage string 当文本框的内容无效时出现的提示文本。 null
tipPosition string 定义当文本框的内容无效时提示消息的位置。可能的值:'left'、'right'。该属性自版本 1.3.2 起可用。 right
deltaX number 在 X 方向的提示偏移。该属性自版本 1.3.3 起可用。 0
novalidate boolean 当设置为 true 时,则禁用验证。该属性自版本 1.3.4 起可用。 false

方法

名称 参数 描述
destroy none 移除并销毁该组件。
validate none 进行验证以判定文本框的内容是否有效。
isValid none 调用 validate 方法并且返回验证结果,true 或者 false。
enableValidation none 启用验证。该方法自版本 1.3.4 起可用。
disableValidation none 禁用验证。该方法自版本 1.3.4 起可用。












jquery easy ui 验证框架的更多相关文章

  1. jQuery Easy UI 开发笔记

    1.jQuery Easy UI主要的运行原理是通过核心的代码调用插件来实现UI效果的 2.jQuery Easy UI插件与插件之间的关系是: 一.独立式插件: 独立式插件是指:不与其他的插件具有相 ...

  2. JQuery Easy Ui (Tree树)详解(转)

    第一讲:JQuery Easy Ui到底是什么呢? 首先咱们知道JQuery是对Java Script的封装,是一个js库,主要提供的功能是选择器,属性修改和事件绑定等等.. JQuery ui是在j ...

  3. 【JQuery Easy UI】后台管理系统的简单布局分享

    重要说明:本博已迁移到 石佳劼的博客.有疑问请到 文章新地址 留言..! 近期做的一个简单的后台管理系统,当中用到了JQuery Easy UI框架,对于撸主这样的把控件能摆整齐就谢天谢地的码农来说, ...

  4. jQuery Easy UI Panel(面板)组件

    panel(面板)组件,跟前面的组件使用方法差点儿都差点儿相同,也是从设置一些面板属性.操作面板触发的事件.我们可针对面板对象的操作方法这三个点去学习. 后面有一些组件要依赖于这个组件. 另一点跟前面 ...

  5. Jquery easy UI 上中下三栏布局 分类: ASP.NET 2015-02-06 09:19 368人阅读 评论(0) 收藏

    效果图: 源代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://w ...

  6. JQuery Easy Ui dataGrid 数据表格 ---制作查询下拉菜单

    JQuery Easy Ui dataGrid 数据表格 数据表格 - DataGrid 继承$.fn.panel.defaults,使用$.fn.datagrid.defaults重载默认值.. 数 ...

  7. jQuery Easy UI (适应屏幕分辨率大小)布局(Layout)

    一.jQuery Easy UI (适应屏幕分辨率大小)布局(Layout) 1.首先应用的是jquery-easyui-1.4 版本(版本不同,兼容性不同) 2.实现整个页面的布局( layout: ...

  8. jQuery Easy UI Resizable(调整大小)组件

    Resizable(调整大小)组件,easyui基础组件之中的一个.调整大小就是能够对元素能够拖着调整大小,这个组件不依赖于其它组件,使用比較简单,相关的属性.事件都 在样例中介绍了. 演示样例: & ...

  9. jQuery Easy UI Droppable(放置)组件

    Droppable(放置)组件也是一个基本组件,使用方法较简单,语法都在样例里面凝视了: 演示样例: <!DOCTYPE html> <html> <head> & ...

随机推荐

  1. Iometer教程

    Iometer Tutorial and Introduction http://www.itechstorm.com/iometer-tutorial-introduction

  2. C++如何禁止掉对象的复制操作

    最容易想到的是将拷贝构造函数与赋值函数声明为private.但是,private只是说外部不能直接调用,但是可以间接通过类的成员函数与友元函数对其访问.那么怎么办呢? ---->在类中,允许声明 ...

  3. windows下安装rabbitmq的php扩展amqp(原创)

    从php官方下载相应的版本http://pecl.php.net/package/amqp,我这里使用的是1.4.0版本(http://pecl.php.net/package/amqp/1.4.0/ ...

  4. SQL Server快速部署作业到多台服务器

    问题: 需要在很多的SQL Server服务器上创建相同的作业.我们可以一台一台的运行相同的脚本创建作业,但是有没有什么简便的做法呢? 解决方法: 可能很多人都没有注意到可以用多服务器环境管理SQL ...

  5. Asp.net 在网页编写C#代码示例-- 一个简单的web MsSql 命令执行环境

    在给一个客户做的系统上,因为要对数据库进行查看,但之前都是用TeamView来连接到客户的服务器进行数据库操作的 但最近客户那边的TeamView好像更改过密码导致我无法正常连接,而巧了客户的网官因为 ...

  6. <The Art of Readable Code> 笔记一

    第1章  代码应易理解 (Code should be easy to understand) 基本原则:好的代码,能够减少 “别人” 理解它的时间. “别人” 不仅指的是 “其它人”,也可能是 “以 ...

  7. HAWQ技术解析(八) —— 大表分区

    一.HAWQ中的分区表        与大多数关系数据库一样,HAWQ也支持分区表.这里所说的分区表是指HAWQ的内部分区表,外部分区表在后面"外部数据"篇讨论. 在数据仓库应用中 ...

  8. HTTP 响应头消息

    HTTP 响应头信息 HTTP请求头提供了关于请求,响应或者其他的发送实体的信息. 在本章节中我们将具体来介绍HTTP响应头信息. 应答头 说明 Allow 服务器支持哪些请求方法(如GET.POST ...

  9. ant design pro (八)构建和发布

    一.概述 原文地址:https://pro.ant.design/docs/deploy-cn 二.详细 2.1.构建 当项目开发完毕,只需要运行一行命令就可以打包你的应用: npm run buil ...

  10. Redhat 5禁止IPv6

    Redhat  5禁止IPv6 IPv6还没有全然普及,可是安装完系统之后IPv6是有效的,在一定程度上影响网络性能,所以在我们在全然不使用IPv6的情况下.最好关闭IPv6.如今我们就在本文以完整的 ...