【笔记】formvalidtor使用总结

1.textarea验证长度, 可以直接用的
文本域验证:
<textarea id="txtcontent" name="txtcontent" rows="" cols=""></textarea>
<div id="txtcontentTip" style="width:300px"></div>

$("#txtcontent").formValidator({ onShow: "请输入专家简介!", onFocus: "输入一个到一百个字符", onCorrect: "输入正确,谢谢您的合作!" }).inputValidator({ min: 1, max: 100, onError: "输入长度,不对!" });


2.ckeditor 验证是否为空, 我的解决办法, 可以自己写外部函数

注意:这是个验证ckeditor内容是否为空的函数, 长度验证可以忽略, 因为富文本编辑器内容的长度这么计算不可行, 虽然也能计算出来, 但是不是正确的长度.
jsp内容:
<textarea name="remark" id="remark" cols="10" rows="2" class="ckeditor"></textarea>
<div id="remarkTip" style="width:300px"></div>
js内容:
function   isCKempty () {
// 获取富文本编辑器的内容
            var   content = CKEDITOR.instances[ 'remark' ].getData();
            if   (content) {
                // 有内容返回
                if   (content.length > 0 && content.length <= 10) {
                    // 当然, 富文本这个长度不能这么写的, 富文本里字符计算单位肯定不是1个字一个字算,还有标签等等
                    return   true ;
                else   {
                    return   '输入长度不正确' ;
                }
            else   {
                // 富文本编辑器内容为空
                return   '请输入个人简介' ;
            }
     }
下面就是关键了, formValidator调用这个外部函数即可,这里onFocus是不好使的
$( "#remark" ).formValidator({ onShow:  "请输入个人简介!" onFocus:  "输入1到100个字符" ,  onCorrect:  "输入正确,谢谢您的合作!"   }).functionValidator({ fun:isCKempty });
注意:对于functionValidator老版本好像不支持. 4.1.1以后肯定支持.

另外, 下面是用户名中包含了敏感字的一个例子
( "#username" ).formValidator({onShow: "用户名至少5个字符,最多10个字符" ...})
       .inputValidator({min:5,max:10,onError: "你输入的用户名非法,请确认" })
       .functionValidator({fun: function (val){
           if (val ==  "admin" ){
return   "该用户名包含保留关键字" }
       }});

function 中 return的返回值可以是boolean, 也可以是string, onError属性默认: "输入错误", string会替代它

3.类似有必须传图片的需求, 我这样验证的

同样是用自定义函数, 当然要看页面的实际情况例如, 图片img标签在被上传后, 会生成在imgDiv下一个img标签的元素, 则用自定义函数, 看imgDiv下是否有img标签即可了
<div   id = "imgDiv"   name = "imgDivTip" >
     <!-- <img id="img" name="img" alt="" src="images/t.jpg"/> -->
  </ div >
  < div   id = "imgDivTip"    style = "width:300px" ></ div >

( "#imgDiv" ).formValidator({onShow:  "请上传企业logo!" , onCorrect:  "ok,谢谢您的合作!"   }).functionValidator({ fun:isImgempty });

function   isImgempty() {
         if ($( "#imgDiv" ) .find("img") .length == 1) {
             return   true ;
         }
         return   false ;
     }

4. 大坑, 分组验证 , 注意validatorGroup 必须大写!
今天在同一个页面使用分组验证了两组表单,formValidator校验数据,但最后出现了问题。
始终无法按照两组分开验证, 网上查各种资料, 都是用validatorgroup来解决.但是为什么就是不好使.
后来改了很多,但最后发现是因为 validatorGroup 中的validatorgroup 写成了小写的,有很多资料validatorGroup的"g"依然是小写, 不知道是以前老版本的原因还是什么

分组方法:
首先如果两个提交按钮, 分别在提交按钮上绑定
οnclick="return jQuery.formValidator.pageIsValid('组号码');"

js中注意分组属性:
第一组校验组,默认组号为"1"
     $.formValidator.initConfig({formID: "id_frm_password" ,errorFocus: false ,onSuccess:check,onError: function (msg,obj){jAlert(msg, "温馨提示" , function (){obj.focus();})}});
     $( "#id_p_userName" ).formValidator({onFocus: "用户名只能含有汉字,字母,数字或下划线" })
     .inputValidator({min:1,max:20,onErrorMin: "对不起,请您输入用户名" ,onErrorMax: "对不起,您输入的用户名超过了20个字" });
     $( "#id_oldPassword" ).val( "" ).formValidator({empty: true })
         .inputValidator({min:1,max:36,onErrorMin: "对不起,请您输入原密码" ,onErrorMax: "对不起,你输入的原密码超过了36个字符" });
 
     //第二个验证组
     $.formValidator.initConfig({ validatorGroup : "2" ,formID: "id_frm_userinfo" ,errorFocus: false ,onSuccess:check,onError: function (msg,obj){jAlert(msg, "温馨提示" , function (){obj.focus();})}});
     $( "#id_p_tel" ).formValidator({ validatorGroup : "2" }).inputValidator({max:20,onErrorMax: "对不起,您输入的电话超过了20个字" });

5. select 下拉框的验证
( "#city" ).formValidator({     
             onShow: "请选择你的城市" ,          
             onFocus: "城市必须选择" ,          
             onCorrect: "谢谢你的配合" ,          
              defaultValue:"sy"})    // 注意:默认选中一个, 但这个参数是 option 的value值 , object也可以当参数   
             .inputValidator({          
                 min:1,    // 最少选择一个        
                 onError:  "你是不是忘记选择城市了!"        }) .defaultPassed() ;

这里不太了解的参数是这两个:
defaultPassed        //默认校验通过,显示onCorrect状态
defaultValue : Object | String ,   //为input、select、textarea控件设置默认值

6. 比定义的min属性小时, 或者比max大时的提示 , 用 onErrorMin, onErrorMax
onErrorMin String
属性名: 比min属性小的提示。    当用户输入的值比min属性小的时候的错误提示
$("#nl").formValidator({
          autoModify:true,
          onShow:"请输入的年龄(1-99岁之间)",
          onFocus:"只能输入1-99之间的数字哦",
          onCorrect:"恭喜你,你输对了"
      }).
      inputValidator({
          min:1,
          max:99,
          type:"value",
           onErrorMin:"你输入的值必须大于等于1",
          onError:"年龄必须在1-99之间,请确认"
      });
onErrorMaxString
属性名:比max属性大的提示。    当用户输入的值比max属性大的时候的错误提示

7.组合验证,需要根据用户选择框体的不同进行不同的验证条件。
例一:座机和手机,至少选其一,可以不选。
$( "#txtMobileTel,#txtContactTel" ).formValidator({ tipid: "txtMobileTelTip" , onshow: "请填写任一种联系号码" , onfocus: "请输入移动电话或座机电话" , oncorrect: "输入正确!" }).functionValidator({ fun: allEmpty });
function allEmpty(val, elem) {
  if ($( "#txtMobileTel" ).val() == "" && $( "#txtContactTel" ).val() == "" ) {
   return '请输入移动电话或座机电话' ;
 }
  else {
   if ($( "#txtMobileTel" ).val() != "" && $( "#txtContactTel" ).val() != "" ) {
    if (($( "#txtMobileTel" ).val()).search(/^(((13[0-9]{1})|(15[0-9]{1}))+\d{8})$/) != -1) {
     if (($( "#txtContactTel" ).val()).search(/^(([0\+]\d{2,3}-)?(0\d{2,3})-)?(\d{7,8})(-(\d{3,}))?$/) != -1) { return true } else {
      return "座机电话格式错误" ;
    }
   } else {
     return "移动电话格式错误" ;
   }
  } else {
    if ($( "#txtMobileTel" ).val() != "" ) {
     if (($( "#txtMobileTel" ).val()).search(/^(((13[0-9]{1})|(15[0-9]{1}))+\d{8})$/) != -1) { return true } else {
      return "移动电话格式错误" ;
    }
   }
    if ($( "#txtContactTel" ).val() != "" ) {
     if (($( "#txtContactTel" ).val()).search(/^(([0\+]\d{2,3}-)?(0\d{2,3})-)?(\d{7,8})(-(\d{3,}))?$/) != -1) { return true } else {
      return "座机电话格式错误" ;
    }
   }
  }
};

例二:地区级联下拉,当不存在二级地区的下拉解除校验。
$( "#ddlOne" ).formValidator({
onshow: "请选择省市" ,
onfocus: "省市必须选择" ,
oncorrect: "输入正确" }).inputValidator({ min: 1, onerror: "请选择有效的地区" }).functionValidator({ fun: city });

$( "#ddlTwo" ).formValidator({
onshow: "请选择城市" , onfocus: "城市必须选择" , oncorrect: "输入正确" }).inputValidator({ min: 1, onerror: "请选择有效的地区" });

function city(val, elem) {
  var a = "" ;
 $.getJSON( "../Customer/Area.ashx?parentid=" + $( "#ddlOne option:selected" ).val(), null , function (json) {
   if (json[0].areacode == "0" ) {
   $( "#ddlTwo" ).attr( "disabled" , true ).unFormValidator( true ); //解除校验
  }
   else {
   $( "#ddlTwo" ).attr( "disabled" , false ).unFormValidator( false ); //恢复校验
  }
 });
}

8.checkbox的验证
$( ":checkbox[name='inster']" ).formValidator({     
             validatorGroup: "3" ,
             onShow: "请选择你的兴趣爱好(至少选择2个,最多选择3个)" ,          
             onFocus: "你至少选择2个,最多选择3个" ,          
             onCorrect: "恭喜你,你选对了" ,          
             defaultValue:[ "zq" , "pq" ]}).inputValidator({          
                 min:2,          
                 max:3,          
                 onError: "你选的个数不对(至少选择2个,最多选择3个)" });

9.radio的验证
$( ":radio[name='xb_one']" ).formValidator({        
   onShow: "请选择你的性别" ,         
  onFocus: "没有第三种性别了,你选一个吧" ,         
  onCorrect: "输入正确" ,         
  defaultValue:[ "1" ]}).inputValidator({          
min:1,         
  max:1,         
  onError: "性别忘记选了,请确认"        }).defaultPassed();

10.两个空间之间, 进行比较的验证, 例如密码两次确认等
支持: text(文本框)、file(文件选择器)、password(密码框)、textarea(多行编辑框)的比较
$( "#password2" ).formValidator({         
  onShow: "输再次输入密码" ,         
  onFocus: "至少1个长度" ,          
onCorrect: "密码一致" })
  .inputValidator({min:1,onError: "重复密码不能为空,请确认" }) 
.compareValidator({          
desID:"password1",         
operateor:"=",          
  onError: "2次密码不一致,请确认"        });
desID String
属性名:要比较控件的ID。    要跟源目标进行比较的目标ID
operateor String
(默认: "=")     属性名:比较符号。    一共有如下几种类型:=、!=、>、>=、<、<=
dataType String
(默认: "string")     属性名:数据类型。    目前只支持4种:"string"、"number","datetime","date"

11. 多个空间共用一个提示框
$("#Tel_country").formValidator({validatorGroup:"3", tipID:"teltip",onShow:"请输入国家区号",onFocus:"国家区号2位数字",onCorrect:"恭喜你,你输对了",defaultValue:"86"});
$("#Tel_area").formValidator({validatorGroup:"3", tipID:"teltip",onShow:"请输入地区区号",onFocus:"地区区号3位数字",onCorrect:"恭喜你,你输对了"});
$("#Tel_number").formValidator({validatorGroup:"3", tipID:"teltip",onShow:"请输入电话号码",onFocus:"电话号码8位数字",onCorrect:"恭喜你,你输对了"});
$("#Tel_ext").formValidator({validatorGroup:"3" ,tipID:"teltip",onShow:"请输入分机号码",onFocus:"分机号码3位数字",onCorrect:"恭喜你,你输对了"});

下面常用的验证, 通过正则表达库:

$.formValidator.initConfig({ formID: "form1", onError: function () { alert("校验没有通过,具体错误请看错误提示") } });
$("#sfz").formValidator({ onShow: "请输入15或18位的身份证", onfocus: "输入15或18位的身份证", onCorrect: "输入正确" }).regexValidator({ regExp: "idcard", dataType:"enum", onError: "你输入的身份证格式不正确" });
$("#sfz1").formValidator({ onShow: "请输入15或18位的身份证", onfocus: "输入15或18位的身份证", onCorrect: "输入正确" }).functionValidator({ fun: isCardID });
$("#zs").formValidator({ onShow: "请输入整数", onCorrect: "谢谢你的合作,你的整数正确" }).regexValidator({ regExp: "intege", dataType: "enum", onError: "整数格式不正确"});
$("#zzs").formValidator({ onShow: "请输入正整数", onCorrect: "谢谢你的合作,你的正整数正确" }).regexValidator({ regExp: "intege1", dataType: "enum", onError: "正整数格式不正确" });
$("#fzs").formValidator({ onShow: "请输入负整数", onCorrect: "谢谢你的合作,你的负整数正确" }).regexValidator({ regExp: "intege2", dataType: "enum", onError: "负整数格式不正确" });
$("#sz").formValidator({ onShow: "请输入数字", onCorrect: "谢谢你的合作,你的数字正确" }).regexValidator({ regExp: "num", dataType: "enum", onError: "数字格式不正确" });
$("#zs1").formValidator({ onShow: "请输入正数", onCorrect: "谢谢你的合作,你的正数正确" }).regexValidator({ regExp: "num1", dataType: "enum", onError: "正数格式不正确"});
$("#fs").formValidator({ onShow: "请输入负数", onCorrect: "谢谢你的合作,你的负数正确" }).regexValidator({ regExp: "num2", dataType: "enum", onError: "负数格式不正确" });
$("#sj").formValidator({ onShow: "请输入你的手机号码", onfocus: "必须是13或15打头哦", onCorrect: "谢谢你的合作,你的手机号码正确" }).regexValidator({ regExp: "mobile", dataType: "enum", onError: "手机号码格式不正确" });
$("#email").formValidator({ onShow: "请输入你的email", onfocus: "请注意你输入的email格式,例如:wzmaodong@126.com", onCorrect: "谢谢你的合作,你的email正确"}).regexValidator({ regExp: "email", dataType: "enum", onError: "email格式不正确" });
$("#fds").formValidator({ onShow: "请输入浮点数", onCorrect: "谢谢你的合作,你的浮点数正确" }).regexValidator({ regExp: "decmal", dataType: "enum", onError: "浮点数格式不正确" });
$("#zfds").formValidator({ onShow: "请输入正浮点数", onCorrect: "谢谢你的合作,你的正浮点数正确" }).regexValidator({ regExp: "decmal1", dataType: "enum", onError: "正浮点数格式不正确" });
$("#ffds").formValidator({ onShow: "请输入负浮点数", onCorrect: "谢谢你的合作,你的负浮点数正确" }).regexValidator({ regExp: "decmal2", dataType: "enum", onError: "负浮点数格式不正确" });
$("#fffds").formValidator({ onShow: "请输入非负浮点数", onCorrect: "谢谢你的合作,你的非负浮点数正确" }).regexValidator({ regExp: "decmal4", dataType: "enum", onError:"非负浮点数格式不正确" });
$("#fzfds").formValidator({ onShow: "请输入非正浮点数", onCorrect: "谢谢你的合作,你的非正浮点数正确" }).regexValidator({ regExp: "decmal5", dataType: "enum", onError:"非正浮点数格式不正确" });
$("#ys").formValidator({ onShow: "请输入16进制颜色", onCorrect: "谢谢你的合作,你的16进制颜色正确" }).regexValidator({ regExp: "color", dataType: "enum", onError: "16进制颜色格式不正确" });
$("#yb").formValidator({ onShow: "请输入邮编", onfocus: "6位数字组成的哦", onCorrect: "谢谢你的合作,你的邮编正确" }).regexValidator({ regExp: "zipcode", dataType:"enum", onError: "邮编格式不正确" });
$("#ip4").formValidator({ onShow: "请输入ip4", onfocus: "例如:172.16.201.18", onCorrect: "谢谢你的合作,你的ip4正确" }).regexValidator({ regExp: "ip4", dataType:"enum", onError: "ip4格式不正确" });
$("#fk").formValidator({ onShow: "请输入非空字符", onCorrect: "谢谢你的合作,你的非空字符正确" }).regexValidator({ regExp: "notempty", dataType: "enum", onError: "非空字符格式不正确" });
$("#tp").formValidator({ onShow: "请输入图片名", onCorrect: "谢谢你的合作,你的图片名正确" }).regexValidator({ regExp: "picture", dataType: "enum", onError: "图片名格式不正确" });
$("#rar").formValidator({ onShow: "请输入压缩文件名", onCorrect: "谢谢你的合作,你的压缩文件名正确" }).regexValidator({ regExp: "rar", dataType: "enum", onError: "压缩文件名格式不正确" });
$("#qq").formValidator({ onShow: "请输入QQ号码", onCorrect: "谢谢你的合作,你的QQ号码正确" }).regexValidator({ regExp: "qq", dataType: "enum", onError: "QQ号码格式不正确"});
$("#dh").formValidator({ onShow: "请输入国内电话", onfocus: "例如:0577-88888888或省略区号88888888", onCorrect: "谢谢你的合作,你的国内电话正确" }).regexValidator({ regExp: "tel", dataType: "enum", onError: "国内电话格式不正确" });
$("#yhm").formValidator({ onShow: "请输入用户名", onCorrect: "谢谢你的合作,你的用户名正确" }).regexValidator({ regExp: "username", dataType: "enum", onError: "用户名格式不正确" });
$("#zm").formValidator({ onShow: "请输入字母", onCorrect: "谢谢你的合作,你的字母正确" }).regexValidator({ regExp: "letter", dataType: "enum", onError: "字母格式不正确"});
$("#dxzm").formValidator({ onShow: "请输入大写字母", onCorrect: "谢谢你的合作,你的大写字母正确" }).regexValidator({ regExp: "letter_u", dataType: "enum", onError: "大写字母格式不正确" });
$("#xxzm").formValidator({ onShow: "请输入小写字母", onCorrect: "谢谢你的合作,你的小写字母正确" }).regexValidator({ regExp: "letter_l", dataType: "enum", onError: "小写字母格式不正确" });
$("#sfz").formValidator({ onShow: "请输入身份证", onCorrect: "谢谢你的合作,你的身份证正确" }).regexValidator({ regExp: "idcard", dataType: "enum", onError: "身份证格式不正确" });
$("#name").formValidator({ onShow: "请输入姓名!", onFocus: "输入一个到十个字符", onCorrect: "输入正确,谢谢您的合作!" }).inputValidator({ min: 1, max: 20, onError: "输入长度,不对!" });
$("#timelong").formValidator({ onShow: "请输入路演时长!", onFocus: "输入格式为正整数!", onCorrect: "输入正确,谢谢您的合作!" }).regexValidator({ regExp:"intege1",dataType: "enum", onError: "您输入的时长格式不正确!" });
$("#address").formValidator({ onShow: "请输入路演平台名称!", onFocus: "输入一个到五十个字符", onCorrect: "输入正确,谢谢您的合作!" }).inputValidator({ min: 1, max: 50, onError: "输入长度,不对!" });
$("#urladdress").formValidator({ onShow: "请输入路演链接地址!", onFocus: "输入格式:http://www.baidu.com", onCorrect: "输入正确,谢谢您的合作!" }).regexValidator({ regExp:"^(http|https|ftp)\://([a-zA-Z0-9\.\-]+(\:[a-zA-Z0-9\.&%\$\-]+)*@)*((25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])|localhost|([a-zA-Z0-9\-]+\.)*[a-zA-Z0-9\-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(\:[0-9]+)*(/($|[a-zA-Z0-9\.\,\?\'\\\+&%\$#\=~_\-]+))*$", onError: "输入格式不正确!" });
$("#time").formValidator({ onCorrect: "格式正确" }).functionValidator({fun:isDateTime, onError: "输入格式,不对!" });
$("#txtcontent").formValidator({ onShow: "请输入专家简介!", onFocus: "输入一个到一百个字符", onCorrect: "输入正确,谢谢您的合作!" }).inputValidator({ min: 1, max: 100, onError: "输入长度,不对!" });function isCKempty() {
// 获取富文本编辑器的内容
   var content = CKEDITOR.instances['remark'].getData();
   if (content) {
       // 有内容返回
       if (content.length > 0 && content.length <= 10) {
           // 当然, 富文本这个长度不能这么写的, 富文本里字符计算单位肯定不是1个字一个字算,还有标签等等
           return true;
       } else {
           return '输入长度不正确';
       }
   } else {
       // 富文本编辑器内容为空
       return '请输入个人简介';
   }
}
// 下面就是关键了, formValidator调用这个外部函数即可,这里onFocus是不好使的
$("#remark").formValidator({ onShow: "请输入个人简介!", 
    onFocus: "输入1到100个字符", 
    onCorrect: "输入正确,谢谢您的合作!" }).functionValidator({fun:isCKempty});


// 另外, 下面是用户名中包含了敏感字的一个例子
("#username").formValidator({onShow:"用户名至少5个字符,最多10个字符"})
      .inputValidator({min:5,max:10,onError:"你输入的用户名非法,请确认"})
      .functionValidator({fun:function(val){
          if(val == "admin"){
            return "该用户名包含保留关键字"}
      }});
// ajax校验用户名是否存在
$("#userName").formValidator({   
			onShowText:"在这里输入用户名",   // 4.1.1 新增
			onShow:"请输入用户名",          
			onFocus:"用户名至少4个字符,最多10个字符,中文算(2个?看编码)",          
			onCorrect:"该用户名可以注册" 
			}).inputValidator({  
			    type:"size", // 默认即是"size":表示字符长度/(checkbox/radio)选择的个数
				min:4,max:10,          
				onError:"你输入的用户名非法,请确认" 
		    }).ajaxValidator({
		    	type : "post",  
		        cache : false,  
		        url : "checkUserName.html",  
		        datatype : "json",  
		        addidvalue : true,  	
		        data : "act=new_vname",  
		        success : function(data){
		        	var obj = JSON.parse(data);	// 必须解析json才能用
		            if(obj.success){
		                return true;              
		            }else{  
		                return obj.msg;                 
		            }  
		        },  
		        buttons: $("#regBtn"),  
		        error: function(){alert("服务器忙,请重试");},  
		        onerror : "您注册的昵称已存在",  
		        onwait : "正在对昵称进行校验..." 
		    });

// 如果想带其他参数, 请在其他控件校验函数中加 ajax: true

简介:完全通过html不需要写JS验证程序就可以实现表单验证功能,可支持一个表单元件多条件验证, 同一页面多表单可同时使用,和服务端程序无关系,完全客户端方式。 Demo1 基本使用方法 Demo2 自定义错误信息显示方式1 Demo3 自定义错误信息显示方式2/FV_onBlur.js插件演示 Demo4 所有判断规则 Demo5 自定义正则规则 Demo6 自定义函数规则 Demo7 自定义验证成功后处理方式 Demo8 结合jquery实现AJAX自定义验证 特性: 使用方法:在要验证表单(form)中加上 onsubmit="return validator(this)" 在要验证表单元件中设置元件,valid(验证规则),errmsg(提示消息),多个验证使用|作为分隔! 验证规则参数: required 必填 eqaul 和另一元件对比值是否相同,对比的元件名在元件加上属性eqaulName gt 和另一元件对比值是否大于另一元件值,对比的元件名在元件加上属性eqaulName isNumber 是否为数字 isInt 是否为整形 isTime 是否为时间格式 isDate 是否为日期格式 isEmail 必须是Email格式 isPhone 是否为电话号码 isMobile 是否为手机号码 isTelephone 是否为电话或手机号码 isIdCard 是否为身份证号码 isMoney 是否为货币值 isZip 是否是邮件编码 isQQ 是否是QQ isEnglish 是否是english isChinese 是否是中文 isUrl 是否是url compare 对比两个值 limit 长度限制 range 值范围限制 requireChecked 单选、复选框必须选择 filter 扩展名限制 isNo 值不等于 regexp 自定义正则判断 custom 自定义函数判断 更新历史: 1.0 disabled的元件不进行验证 比较大小判断的改正 增加了isTelephone决断,即电话验证可包括手机和市话 url规则支持https 增加了元件onblur即时提示错误信息的插件.FV_onBlur.js 0.6 手机号码添加了15开头的号码支持 。 0.5 修复了当元件名称出现数组形式[],在IE下出错问题。 0.4 修改了当errmsg不存在时出现的问题 修改了如果一个页面存在多个表单的自定义错误显示方式问题 添加了自定义验证成功后处理方式 0.3 加入十几种验证规则 加入自定义正则判断 加入自定义函数判断 加入将焦点移到第一个错误元件 0.2 加入自定义错误显示方式
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值