bootstrapvalidator的简单校验【必填校验、长度校验、是否存在校验(remote)】
需求:输入框的"供应商编码"不能为空而且不能与数据库重复,供应商名称不能为空。
解决:
1.input如下
<input id="ssupplierNo" name="ssupplierNo" type="text"
class="form-control input-sm"
value="${supplierinfo.ssupplierNo}" 供应商编码 " />
2.js函数
jQuery(function() {
$('#Form').bootstrapValidator({
feedbackIcons : {
valid : 'glyphicon glyphicon-ok',
invalid : 'glyphicon glyphicon-remove',
validating : 'glyphicon glyphicon-refresh'
}
,
fields : {
ssupplierNo : {
validators : {
notEmpty : {
message : '供应商编码不能为空'
},
stringLength : {
max : 50,
message : '不超过50个字符'
}
,
remote:{
message:'供应商编码已经存在,请重新输入',
url:'<%=request.getContextPath()%>/apps/supplierInfo.do?method=checkSupplierNo',
delay:4000 /*使用延时异步调用服务端方法,4000即文本输入框静止4秒后调用服务端方法*/
}
}
},
ssupplierFullName : {
validators : {
notEmpty : {
message : '供应商名称不能为空'
},
stringLength : {
max : 50,
message : '不超过50个字符'
}
}
},
}
});
}
3.供应商编码唯一性校验控制层代码如下
/* 校验输入框的值是否已经存在 */
@RequestMapping(params = "method=checkSupplierNo")
public
@ResponseBody
JSONObject checkSupplierNo(HttpServletRequest request, ModelMap modelMap) {
String supplierNo = request.getParameter("ssupplierNo");//获取输入框的值
JSONObject result = new JSONObject();
try{
SupplierInfoQuery query = new SupplierInfoQuery();
query.setSsupplierNo(supplierNo);
List<SupplierInfo> supplierInfo_list =supplierInfoService.getSupplierInfosByQueryCriteria(0, Integer.MAX_VALUE, query);
if(supplierInfo_list.size()>0){//如果能查到值说明重复,返回false
result.put("valid", false);
}else{
result.put("valid", true);
}
}
catch (Exception ex) {
ex.printStackTrace();
logger.error(ex);
}
return result;
}
注意事项:
这里需要说明的是bootstrap的remote验证器需要的返回结果一定是json格式的数据 :
{"valid":false} //表示不合法,验证不通过
{"valid":true} //表示合法,验证通过
如果返回任何其他的值,页面验证将获取不到验证结果导致无法验证。
bootstrapvalidator的简单校验【必填校验、长度校验、是否存在校验(remote)】的更多相关文章
- vue+ElementUI项目中,上传控件为必填项,上传图片后清空提示信息
(ps:以下是我在项目中遇到得问题及解决方法,希望对你们有帮助.如果还有其他方法,可以留言,谢谢) 一个表单页面,使用element-ui中el-upload上传图片,此项为必填项,然后写了校验规则, ...
- lay-verify进行非必填项校验
它默认都验证了! 需要调整源码!form.js,layui.all.js this.config = { verify: { required: [/[\S]+/, "必填项不能为空&quo ...
- Uep必填字段校验
在开发中常常有必填字段, <span style="color:Red">*</span>服务地址:</td><hy:formfield ...
- Vue Elementui 表单必填项和非必填项label文字对齐的简单方式
1. 不好的方式 很长时间以来都是用改写form-item样式来使得必填项和非必填项保证label对齐,这样需要改写系统样式,还要在相应的item上引用,代码量增多,示例如下(不推荐) <tem ...
- andori 动画验证必填项
android项目开发过程中,都会碰到必填项的校验,最简单的就是利用Toast对用进行提示,感觉这种提示太不够人性化了,那么今天就来个带动画的,并可以将光标定位到必填项中. andorid动画Anim ...
- SpringBoot Validation参数校验 详解自定义注解规则和分组校验
前言 Hibernate Validator 是 Bean Validation 的参考实现 .Hibernate Validator 提供了 JSR 303 规范中所有内置 constraint 的 ...
- Android5.1.1 - APK签名校验分析和修改源码绕过签名校验
Android5.1.1 - APK签名校验分析和修改源码绕过签名校验 作者:寻禹@阿里聚安全 APK签名校验分析 找到PackageParser类,该类在文件“frameworks/base/cor ...
- unigui 在单据中,某输入为必填项的 JS代码
给大家分享下在单据中,某输入为必填项,用红框标示的简单处理方法:UniSession.AddJS(UniEdit1.JSName+ '.el.setStyle({"border" ...
- struts系列:校验(一)XML校验和函数方法校验
一.jsp示例 <form action="login" method="post"> <div class="form-group ...
- 如何设置dedecms自定义表单必填项?
用dedecms自定义表单可以制作一个简单的预约系统,有些相关信息需要设置为必填项,比如联系方式,没有留下真实的电话或其他信息,以后要怎么联系到你的客户.那我们要如何设置织梦cms自定义表单必填项呢? ...
随机推荐
- xdoj-1297 Tr0y And His Startup
题目: 1297: Tr0y And His Startup 时间限制: 1 Sec 内存限制: 256 MB提交: 18 解决: 8[提交][状态][讨论版] 题目描述 Tr0y创办了一家安全公 ...
- Java基于opencv—归一化
Opencv中提供了resize函数,可以把图像调整到相同大小 Java中resize函数的声明,内部调用的都是native方法 public static void resize(Mat src, ...
- Qt学习资料
网址:http://www.qter.org/portal.php?mod=list&catid=18 qt开源社区 (门户)里面有在线学习资料(讲的比较粗略 但是进程比较快 适用于快速学习) ...
- JVM垃圾收集器-Serial Old收集器,Parallel Old收集器
Serial Old收集器 Serial Old收集器是Serial收集器的老年代版本,它是一个单线程收集器,使用“标记-整理”算法.这个收集器的主要意义也是被Client模式下的虚拟机使用.在ser ...
- 前端自动化构建工具 gulp 学习笔记 一、
一.我对gulp的初期理解 是一种前端辅助开发工具 可以帮你把js,css,img等文件 合并.压缩,图片好像是合并为精灵图,合并为精灵图之后,还会生成一个css样式表. 官方解说是:基于流的自动化构 ...
- creator NDK_PROJECT_PATH=null
NDK_PROJECT_PATH=null 其实不是一个错误= =,少年,不要纠结于此了. 主要问题在于这一句: process_begin: CreateProcess(NULL, E:/Andro ...
- Git学习之第一次使用PR
发起PR的流程 1.Fork想要pr的项目,在自己的仓库里建立一个相同的项目. 2.Clone我们Fork的项目,在本地建立一个项目,方便修改. 3.将修改后的本地项目上传到github上. 4.向原 ...
- C++跨平台集成websocketpp
之前给公司写了一个用于消息交互的服务器,移植到Linux上之后发现H5-Websocket模块经常出问题,而该模块是另一位已经离职同事编写的,所以修改和维护都存在一定的困难,索性就直接把这个模块替换掉 ...
- linux系统如何发送邮件
安装应用yum install mailx sendmail -y接着修改/etc/mail.rc文件,添加一下参数#末尾添加 zabbix 发送告警信息邮箱(按照自己的情况修改)set from= ...
- C#集合类型大揭秘 【转载】
[地址]https://www.cnblogs.com/songwenjie/p/9185790.html 集合是.NET FCL(Framework Class Library)的重要组成部分,我们 ...