录入该值的最大值与最小值 bootstrapValidator进行效验,使最小值不可大于最大值,最大值不可小于最小值

刚开始的验证还是没事的,符合正常的验证规则

再把不符合规则的最大值改变,现在最小值已经比最大值小了,但是最大值没通过验证,说明在最小值框的内容改变时才会进行最小值的验证,最大值的框内容没改变,不会进行验证

一种办法是,在callback中加上该方法,对这个字段从新进行效验,但是两个需要校验的都需要加,就造成了无限循环,

//从新验证该字段
$('#form').data('bootstrapValidator').revalidateField('nMax');

可以自己获取两个字段的值,手动进行比较,当符合验证规则,手动修改该字段的验证状态

$('#form').data('bootstrapValidator').updateStatus("nMax", "VALID", null );

两个值框进行对比

 $("#form").bootstrapValidator({message: 'This value is not valid',feedbackIcons: {valid: 'glyphicon glyphicon-ok',invalid: 'glyphicon glyphicon-remove',validating: 'glyphicon glyphicon-refresh'},fields: {nMin:{validators:{notEmpty:{message:'最小值不能为空'},regexp: {regexp: /^[0-9._]+$/,message: '请输入有效的值'},callback: {message: '最小值不可大于最大值',callback: function(value, validator) {if(value != ''){var nMax = $("#form").data("bootstrapValidator").getFieldElements('nMax');if(nMax.val()!='' && Number(nMax.val()) < Number(value)){return false;}else if(nMax.val()!='' && Number(nMax.val()) > Number(value)){//从新验证该字段//$('#form').data('bootstrapValidator').revalidateField('nMax');//当符合规则手动修改该字段的验证状态/* 因为上面方法两个字段相互验证 ,会造成死循环,所以在两个字段比较之后,并且符合验证规则,就手动修改该字段的验证状态 */$('#form').data('bootstrapValidator').updateStatus("nMax", "VALID", null );return true;}else if(nMax.val()==''){return true;}else{return true;}}else{return true;{}}}},nMax:{validators:{notEmpty:{message:'最大值不能为空'},regexp: {regexp: /^[0-9._]+$/,message: '请输入有效的值'},callback: {message: '最大值不可小于最小值',callback: function(value, validator) {if(value != ''){var nMin = $("#form").data("bootstrapValidator").getFieldElements('nMin');if(nMin.val()!='' && Number(nMin.val())>Number(value)){return false;}else if(nMin.val()!='' && Number(nMin.val())<Number(value)){//从新验证该字段//$('#form').data('bootstrapValidator').revalidateField('nMin');//当符合规则手动修改该字段的验证状态/* 因为上面方法两个字段相互验证 ,会造成死循环,所以在两个字段比较之后,并且符合验证规则,就手动修改该字段的验证状态 */$('#form').data('bootstrapValidator').updateStatus("nMin", "VALID", null );return true;}else if(nMin.val()==''){return true;}else{return true;}}else{return true;}}}}}}  });

三个值进行比较

nMin:{validators:{notEmpty:{message:"最小值不能为空"},regexp: {regexp: /^[0-9._]+$/,message: '请输入有效的值'},callback: {callback: function(value, validator) {var nSetVal = $("#form").data("bootstrapValidator").getFieldElements('nSetVal');var nMax = $("#form").data("bootstrapValidator").getFieldElements('nMax');//最小值大于设定值if( nSetVal.val()!='' && Number(nSetVal.val()) < Number(value) ){return { message:'最小值不可大于设定值', flag:false };//最小值大于最大值}else if( nMax.val()!='' && Number(nMax.val()) < Number(value) ){$('#form').data('bootstrapValidator').updateStatus("nSetVal", "VALID", null );return { message:'最小值不可大于最大值', flag:false };//最小值 小于 设定值}else if( nSetVal.val()!='' && Number(nSetVal.val()) >= Number(value) ){if( Number(nMax.val()) < Number(value) ){$('#form').data('bootstrapValidator').updateStatus("nMax", "VALID", null );return { message:'最小值不可大于最大值', flag:false };//最小值 小于设定值  小于最大值   符合全部要求}else if( nMax.val()!='' && Number(nMax.val()) >= Number(value) && Number(nMax.val()) >= Number(nSetVal.val()) ){$('#form').data('bootstrapValidator').updateStatus("nSetVal", "VALID", null );$('#form').data('bootstrapValidator').updateStatus("nMax", "VALID", null );return true;//最小值 小于设定值  大于最大值 }else{return true;}}else{return true;}}}}},nSetVal:{validators:{notEmpty:{message:'设定值不能为空'},regexp: {regexp: /^[0-9._]+$/,message: '请输入有效的值'},callback: {callback: function(value, validator) {var nMin = $("#form").data("bootstrapValidator").getFieldElements('nMin');var nMax = $("#form").data("bootstrapValidator").getFieldElements('nMax');//设定值小于最小值if( nMin.val()!='' && Number(nMin.val()) > Number(value) ){return { message:'设定值不可小于最小值', flag:false };//设定值 大于 最大值}else if( nMax.val()!='' && Number(nMax.val()) < Number(value) ){$('#form').data('bootstrapValidator').updateStatus("nMin", "VALID", null );return { message:'设定值不可大于最大值', flag:false };//设定值 小于 最大值}else if( nMax.val()!='' && Number(nMax.val()) >= Number(value) ){if( nMin.val()!='' && Number(nMin.val()) > Number(value)){$('#form').data('bootstrapValidator').updateStatus("nMax", "VALID", null );   return { message:'设定值不可小于最小值', flag:false };//设定值 大于最小值 小于最大值   符合全部要求}else if( nMin.val()!='' && Number(nMin.val()) <= Number(value) && Number(nMax.val()) >= Number(value) ){$('#form').data('bootstrapValidator').updateStatus("nMax", "VALID", null );$('#form').data('bootstrapValidator').updateStatus("nMin", "VALID", null );return true;}else{return true;}}else{return true;}}}}},nMax:{validators:{notEmpty:{message:"最大值不能为空"},regexp: {regexp: /^[0-9._]+$/,message: '请输入有效的值'},callback: {callback: function(value, validator) {var nMin = $("#form").data("bootstrapValidator").getFieldElements('nMin');var nSetVal = $("#form").data("bootstrapValidator").getFieldElements('nSetVal');//最小值大于最大值if( nMin.val()!='' && Number(nMin.val()) > Number(value) ){return { message:'最大值不可小于最小值', flag:false };//设定值 大于 最大值}else if( nSetVal.val()!='' && Number(nSetVal.val()) > Number(value) ){$('#form').data('bootstrapValidator').updateStatus("nMin", "VALID", null );return { message:'最大值不可小于设定值', flag:false };//最小值 小于 最大值}else if( nMin.val()!='' && Number(nMin.val()) <= Number(value) ){if(nSetVal.val()!='' && Number(nSetVal.val()) > Number(value)){$('#form').data('bootstrapValidator').updateStatus("nMin", "VALID", null );return { message:'最大值不可小于设定值', flag:false };//最小值 小于最大值 设定值 小于最大值   符合全部要求}else if( nSetVal.val()!='' && Number(nSetVal.val()) <= Number(value) && Number(nSetVal.val()) >= Number(nMin.val()) ){$('#form').data('bootstrapValidator').updateStatus("nSetVal", "VALID", null );$('#form').data('bootstrapValidator').updateStatus("nMin", "VALID", null );return true;//最小值 小于最大值 设定值 大于最大值}else{return true;}}else{return true;}}}}}

bootstrapValidator 常用的验证

//不为空验证
notEmpty: {message: '必须输入或者必须选择'
}//正整数验证
digits : {message : '字段必须是正整数'
}//内容最小值验证
greaterThan: {value : 1,message : '最小输入1'
}//内容最大值验证
lessThan: {value : 100message : '最大输入100'
}//正则验证
regexp: {regexp: /^[a-zA-Z0-9_]+$/,message: '正则验证,这里验证只能输入大小写字母数字和下划线'
}//内容长度验证
stringLength : {min : 2,max : 25,message : '长度2-25位字符'
}//回调验证
callback: {message: '请输入整数',callback: function(value, validator) {    //可以return   true  /  false//return  false;//也可以这样return { message:'最小值不可大于最大值', flag:false };}
}//日期验证
date: {format: 'YYYY/MM/DD',message: '日期无效'
}//数字验证
digits: {message: '该值只能包含数字。'
}//ajax验证
threshold :  6 , //有6字符以上才发送ajax请求,(input中输入一个字符,插件会向服务器发送一次,设置限制,6字符以上才开始)
remote: {//ajax验证。server result:{"valid",true or false} 向服务发送当前input name值,获得一个json数据。例表示正确:{"valid",true}  url: 'exist2.do',//验证地址message: '用户已存在',//提示消息delay :  2000,//每输入一个字符,就发ajax请求,服务器压力还是太大,设置2秒发送一次ajax(默认输入一个字符,提交一次,服务器压力太大)type: 'POST'//请求方式}//复选框验证
choice: {min: 2,max: 4,message: '请选择2-4项'
}//密码确认
identical: {field: 'confirmPassword',message: 'The password and its confirm are not the same'
}

bootstrapValidator验证最大值最小值范围限制相关推荐

  1. js基础知识整理之 —— 求最大值 最小值 平均数的几种方法

    一.最大值和最小值 1.通过数组的sort方法排序,然后取数组中最后一个,第一个: 2.假设法 假设数组第一项是最大值,然后通过循环获取数组中的每一项,让数组中的每一项和max进行比较,如果大于max ...

  2. JavaScript 数组排序及查找数组中最大值最小值方法

    JavaScript 数组排序方法及查找最大值最小值方法 1. sort()方法排序 1.1 方法介绍 1.2 语法:arr.sort([compareFunction]) 1.3 参数说明 1.4 ...

  3. R语言max函数min函数计算各种数据对象最大值最小值实战

    R语言max函数min函数计算各种数据对象最大值最小值实战 目录 R语言max函数min函数计算各种数据对象最大值最小值实战 #基本语法

  4. html验证用户名已存在,BootstrapValidator验证用户名已存在(Ajax)_亦心_前端开发者...

    Java 一.实现效果: 重置这里有bug,bootstrapValidator验证不能重置,待解决. 二.代码准备: 引入bootstrap,bootstrapValidator和 / 三.部分代码 ...

  5. C++极值minmax最大值最小值算法(附完整源码)

    极值minmax最大值最小值算法 极值minmax最大值最小值算法的完整源码(定义,实现,main函数测试) 极值minmax最大值最小值算法的完整源码(定义,实现,main函数测试) #includ ...

  6. 均值定理最大值最小值公式_如何理解中值定理?三大微分中值定理的几何意义及其证明介绍。...

    本文是为了下篇文章<三大微分中值定理的应用-经典例题>作基础准备 本文参考谢惠民<数学分析习题课讲义>和裴礼文<数学分析中的典型问题与方法>中的内容.已看过的同学可 ...

  7. mysql查找最大值最小值_查找两个8位数字的最大值| 8086微处理器

    mysql查找最大值最小值 Problem statement: 问题陈述: To find maximum of two 8-bit numbers using 8086 Microprocesso ...

  8. python求最大值最小值_Python求可变参数的最大值最小值以及参数个数

    求可变参数的最大值最小值以及参数个数 简介: 首先要做这个题,我们要使用函数来解决,这就要求我们要掌握函数的定义以及函数的调用.函数是一段具有特定功能的.可重用的,用来实现单一,或相关联功能的代码段. ...

  9. 求数组的最大值php,求PHP数组最大值,最小值的代码

    求PHP数组最大值,最小值的代码,需要的朋友可以参考下. 代码如下: $fruits = array("155::vbscript::http://www.jb51.net/list/lis ...

最新文章

  1. linux的/etc/hosts的作用
  2. STM32 基础系列教程 4 – 基本定时器
  3. 网关和路由器的区别是什么?
  4. 最值反演[PKUWC2018][loj2542]随机游走
  5. 06jQuery-04-DOM操作
  6. MySQL数据库创建用户_修改用户_删除用户_设置用户
  7. linux删除mysql临时文件_linux下mysql自动备份数据库与自动删除临时文件_MySQL
  8. VC2008 Windows Media Player控件的使用技巧 三
  9. 【实践】美团外卖广告智能算力的探索与实践
  10. 关于学计算机有什么用检讨书,旷计算机课检讨书
  11. cf378D(stl模拟)
  12. et200s模块接线图讲解_ET200S 模块说明
  13. 使用java对pdf文档进行分解和合成
  14. mongo分片集群部署
  15. 网络验证系统BSPHP二次开发 自定义加密解密开发
  16. html display none取消,将displaynone取消
  17. Shopee上货软件,新手小白必备神器
  18. UVA 11909 Soya Milk(简单数学三角函数计算)
  19. Tekton 与 Argo CD 结合实现 GitOps
  20. 百度地图根据地理坐标转换经纬度

热门文章

  1. 女生适合linux运维吗,女生适不适合做Linux运维工程师进入IT行业?
  2. WeWork宣布WeWork中国完成 5 亿美元 B 轮融资,由挚信资本、淡马锡、软银集团、弘毅资本等领投
  3. 计算球堆积密度的c语言程序,用于形成包含堆积在任意形状的体积中的多分散球形颗粒的计算机化模型的方法和系统与流程...
  4. linux 病毒 挖矿病毒kworkers
  5. WordPress编辑器支持Word文档一键导入
  6. table-cell布局
  7. 皮具封边发黑_手工皮具的封边
  8. SpringBoot配置读写分离
  9. bigdecimal负数变正数_BigDecimal
  10. 浅析class 、superclass、isMemberOfClass、isKindOfClass