jquery.validate.js这个插件已经用了2年多了,是一个不可多得的表单验证最方便快捷的插件。基于jquery的小插件,基本小白一学就会上手,对于项目表单页面比较多,元素比较多的校验,该插件基本分分钟就解决完。

本来想好好总结一下的。暂放demo。

想参考一下这篇楼主的博文。感觉总结的太好了!

http://www.cnblogs.com/si-shaohua/p/3780321.html#undefined

根据博主的总结,我这里主要是想提一下jquery.metadata.js(下载地址:http://www.bvbcode.com/code/g9tf82ml-899335-down)

他的用法是结合jquery.validate.js

写法基本是这个样子的class={};

前端写法无限多,这里就不细细区别那种用法更好,没那精力。其实引用这个写法的主要原因是他的写法会帮助我们动态校验自动生成的表格元素,总所周知啊:jquery.validate.js这个插件是基于表单的name名称进行校验的,而对于动态生成的表单这个name就有点困难困难了。(除非你们想到name[i],i++这种低级想法。因为后端基本不会给name起name1,name2,name3这种名字的,哪家也不这么在数据库里玩。除非自己本地的同学们,哈哈哈!)废话少说。这里就显出jquery.metadata.js他的高尚之品质!

以下是我项目中的一个小代码

 $(".add).on("click",function(){

var str='<tr class="trsec">'+
'<td><select name="assessVoList[][productMetadataId]" id="" class="risk">'+options+'</select></td>'+
'<td><select name="assessVoList[][LossTargetName]" class="subject">'+LossTargetNameid+'</select></td>'+
'<td><select name="assessVoList[][LossTargetType]" class="sslb">'+lossFeeTypeListid+'</select></td>'+
'<td><input type="text" value="'+item.losshow+'" placeholder="损失程度" name="assessVoList[][losshow]" class="losshow {required:true}"/></td>'+
'<td><a class="sbtn delete deleteone" data-toggle="modal" data-target=".mydelete">删除</a></td>'+
'</tr>';
$(".two").find("tbody").append(str);
})

点击按钮,给表格动态增加一条数据时,对表单里的元素进行校验。

会自动进行校验的。

另外一种情况的解决方法:

校验该插件,我使用了jquery.validate.js. 针对name名称一致的,使用了

'assessVoList[][losshow]':{
required:true,
},
'assessVoList[][losshow]':{
required:“不能为空”,
},
另外需要插入一段js代码,来解决相同name名字时也校验。
rulesCache[this.name] = true;
return true;
if ($.validator) {
$.validator.prototype.elements = function () {
var validator = this,
rulesCache = {}; // select all valid inputs inside the form (no submit or reset buttons)
return $(this.currentForm)
.find("input, select, textarea")
.not(":submit, :reset, :image, [disabled]")
.not(this.settings.ignore)
.filter(function () {
if (!this.name && validator.settings.debug && window.console) {
console.error("%o has no name assigned", this);
}
//注释这行代码
// select only the first element for each name, and only those with rules specified
//if ( this.name in rulesCache || !validator.objectLength($(this).rules()) ) {
// return false;
//}
rulesCache[this.name] = true;
return true;
});
}
}

总之,很好用,马上动手做一下吧!

jquery.validate.js表单验证 jquery.validate.js的用法的更多相关文章

  1. Jquery.validate.js表单验证插件的使用

    作为一个网站web开发人员,以前居然不知道还有表单验证这样好呀的插件,还在一行行写表单验证,真是后悔没能早点知道他们的存在. 最近公司不忙,自己学习一些东西的时候,发现了validation的一个实例 ...

  2. 表单验证的validate.js插件---jQuery Validation Plugin

    早上在公交车上看了一个关于慕课网的教程<表单验证的validate.js插件---jQuery Validation Plugin>,正好可以用到自己近期开发简易微博的注册页面和登录页面, ...

  3. jQuery.validate.js表单验证插件

    jQuery.validate.js表单验证插件的使用 效果: 代码: <!DOCTYPE html> <html lang="en"> <head& ...

  4. 基于Jquery Validate 的表单验证

    基于Jquery Validate 的表单验证 jquery.validate.js是jquery下的一个验证插件,运用此插件我们可以很便捷的对表单元素进行格式验证. 在讲述基于Jquery Vali ...

  5. 异步提交form的时候利用jQuery validate实现表单验证

    异步提交form的时候利用jQuery validate实现表单验证相信很多人都用过jquery validate插件,非常好用,并且可以通过下面的语句来自定义验证规则    // 电话号码验证    ...

  6. 基于Bootstrap+jQuery.validate Form表单验证实践

    基于Bootstrap jQuery.validate Form表单验证实践 项目结构 :     github 上源码地址:https://github.com/starzou/front-end- ...

  7. jquery.validation.js 表单验证

    jquery.validation.js 表单验证   官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation jQuer ...

  8. 表单验证插件——validate

    表单验证插件——validate 该插件自带包含必填.数字.URL在内容的验证规则,即时显示异常信息,此外,还允许自定义验证规则,插件调用方法如下: $(form).validate({options ...

  9. JQuery 表单验证--jquery validation

    jquery validation,表单验证控件 官方地址 :http://jqueryvalidation.org/ jquery表单验证 默认值校验规则 jquery表单验证 默认的提示 < ...

随机推荐

  1. 记一个微信支付-1错误JSAPI缺少参数app|get_brand_request:Fail

    最近公司要做一个H5小游戏里边涉及到微信公众号支付,中间摸爬滚打遇到了很多坑.记录一下,留待后人看. 我们来看一下这个方法 GetJsApiParameters 怎么样,看起来像不像输出了一个JSON ...

  2. Mysql忘记密码,支持中文,tab补全

    忘记Mysql密码: (1)暂停服务: /etc/init.d/mysqld stop (2)跳过grant表授权,进入安全模式,并在后台运行: mysqld_safe --skip-grant-ta ...

  3. LNMP分离

    1.Nginx 找php 在nginx 配置文件的server里 添加 location ~.*\.(php|php5)?$ { root    /var/www/html/wwwcom; fastc ...

  4. java 8 中文API

    java 8 中文API 转 https://blog.csdn.net/gao_zhennan/article/details/72871202 java 1.6 帮助文档 中文链接:http:// ...

  5. umask 介绍

    umask码 是用户创建文件或目录的初始权限设置值 文件或目录的权限:读: r — 4写: w — 2执行: x — 1 输入umask 查看umask 码 设定umask码,umask 0033 1 ...

  6. 小D课堂 - 新版本微服务springcloud+Docker教程_3-06 服务注册和发现之Eureka Client搭建商品服务实战

    笔记 6.服务注册和发现之Eureka Client搭建商品服务实战     简介:搭建用商品服务,并将服务注册到注册中心 1.创建一个SpirngBoot应用,增加服务注册和发现依赖     2.模 ...

  7. 全部二进制脚本高可用--只有docker启动未成功

    [root@test1 script]# cat k8s-docker-binary-py #!/usr/bin/python # -*- coding: utf-8 -*- from __futur ...

  8. java数据机构之自定义栈

    一.栈的特点 1.线性数据结构 2.后进先出 二.使用数组来实现栈 //使用数组来实现栈 public class MyArrayStack<E> { //保存数据 private Obj ...

  9. Spark读取HDFS中的Zip文件

    1. 任务背景 近日有个项目任务,要求读取压缩在Zip中的百科HTML文件,经分析发现,提供的Zip文件有如下特点(=>指代对应解决方案): (1) 压缩为分卷文件 => 只需将解压缩在同 ...

  10. 写linux脚本你怎么能不知道位置参数!?

    在写shell脚本的时候,我们经常会手动设置参数,然后对我们的输入的这些参数进行处理和分析,那么这个东东到底值怎么使用的呢? 1.$n $0代表命令本身,$1-9代表接受的第1-9个参数,10以上需要 ...