案例17-validate自定义校验规则校验验证码是否输入正确
1 自定义校验规则代码
<script type="text/javascript">
//使用validate插件进行表单的校验
$(function(){
$("#myform").validate({
rules:{
checkCode:{
"required":true,
"checkVerificationCode":true
} },
messages:{
checkCode:{
"required":"验证码不能为空",
"checkVerificationCode":"验证码输入错误"
}
}
});
}); //自定义校验规则校验验证码是否正确
$.validator.addMethod(
//规则的名称
"checkVerificationCode",
//校验的函数
function(value,element,params){ //定义一个标志
var isTrueFlag= false; //value:表单输入框中输入的内容
//element:被校验的元素对象
//params:规则对应的参数值
//目的:对输入的checkCode进行ajax校验
$.ajax({
"async":false,/*必须要是同步的的方式 */
"url":"${pageContext.request.contextPath}/checkVC",
"data":{"checkCode":value},
"type":"POST",
"dataType":"json",
"success":function(data){
isTrueFlag = data.isTrue;
/* alert(isTrueFlag); */
} }); //返回false代表该校验器不通过
return isTrueFlag;
} ); </script>
2 servlet代码
package www.test.web.servlet; import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; public class CheckVCServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 解决乱码问题
request.setCharacterEncoding("UTF-8"); // 判断验证码是否正确
// 获得页面输入的验证
String checkCode_client = request.getParameter("checkCode");
System.out.println(checkCode_client);
// 获得生成图片的文字的验证码
String checkCode_session = (String) request.getSession().getAttribute("checkcode_session");
System.out.println(checkCode_session);
// 比对页面的和生成图片的文字的验证码是否一致
boolean isTrue=true;
if (!checkCode_session.equals(checkCode_client)) {
isTrue=false;
}
String json ="{\"isTrue\":"+isTrue+"}"; response.getWriter().write(json);
} public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
} }
注意:表单校验不通过的时候不会提交。
案例17-validate自定义校验规则校验验证码是否输入正确的更多相关文章
- 案例16-validate自定义校验规则校验用户名是否存在
1 知识点 2 register.jsp代码 注意自定义校验规则的时候,提交必须是同步的方式. <%@ page language="java" contentType=&q ...
- Jquery Validate自定义验证规则,一个汉字等于两个字符长度
使用Jquery validate时写的一些东西,在这里做个笔记 在使用 Jquery validate 的minlength和maxlength进行文本框内容长度验证的时候,对于一个汉字的长度检测结 ...
- shiro 实现自定义权限规则校验
<span style="font-family: Arial, Helvetica, sans-serif;">在系统中使用shiro进行权限管理,当用户访问没有权限 ...
- SpringBoot2.0 基础案例(17):自定义启动页,项目打包和指定运行环境
本文源码 GitHub地址:知了一笑 https://github.com/cicadasmile/spring-boot-base 一.打包简介 springboot的打包方式有很多种.可以打war ...
- EasyUI 扩展自定义EasyUI校验规则 验证规则
$.extend($.fn.validatebox.defaults.rules, {CHS: {validator: function (value, param) {return /^[\u039 ...
- EasyUI 扩展自定义EasyUI校验规则 验证规则(常用的)
$.extend($.fn.validatebox.defaults.rules, { CHS: { validator: function (value, param) { return /^[\u ...
- JQuery -- Validate, Jquery 表单校验
1. Jquery 表单验证需要插件 jQuery validation 1.7 ---验证插件需要:jQuery 1.3.2 或 1.4.2版本 http://jquery.bassistance ...
- Jquery Validate 相关参数及常用的自定义验证规则
一.官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation 二.默认校验规则 1 2 3 4 5 6 7 8 9 10 1 ...
- EasyUI 扩展自己定义EasyUI校验规则 验证规则(经常使用的)
比如 校验输入框仅仅能录入0-1000之间 最多有2位小数的数字 表单<input type="text" id="rate" name="ra ...
随机推荐
- Mac下默认JDK路径
2.JDK8以及JDK7安装的默认路径为:/Library/Java/JavaVirtualMachines/jdk1.8.0.jdk
- eclipse使用配置
eclipse设置工作空间为UTF-8(适应中文,避免乱码) windows---preference---general---workspace,修改textfile encoding eclips ...
- java(二)认识类和函数
java中,声明类使用new关键字 类名 类变量名 = new 类名(构造函数形参表): 静态函数内不能有非静态类,但是可以有非静态函数. package com.company; /** * Cre ...
- Visual Studio Error
Visual Studio Error 注意:文中所有“系统”用词,均指Windows Console操作系统IO Debug Error 错误类型 #0表示调用约定错误 可以考虑在指针前面加上_st ...
- SQL Server 2012 表分区
转载于:https://www.cnblogs.com/knowledgesea/p/3696912.html 什么是表分区 一般建立数据库表时,表数据都存放在一个文件里. 但是如果是分区表的话,表数 ...
- C#在线运行
初步完成c#代码的在线编辑. 首先,传回前端的c#在线代码,进行预编译,用CSharpCodeProvider这个方法.设置编译版本3.5 设置编译参数GenerateInMemory:是 ...
- hihocoder1580 Matrix
题目链接:(vjudge)戳我 从今天开始不咕咕地填坑啦 考虑一般的求最大子矩阵和...我们一般都是DP,或者直接上悬线法递推. 下面附一个DP的代码: #include<iostream> ...
- GPU大百科全书 第二章 凝固生命的光栅化
光栅化——死神来了…… 前言:在上一期的GPU大百科全书里,我们目睹了可爱的香草从抽象世界走向现实,从方程还原成实体的全过程.可以说香草活了,因为几何单元,我们赋予了她完整的灵魂. 如果你正在为G ...
- [Objective-C语言教程]块(12)
Objective-C类定义了一个将数据与相关行为相结合的对象. 有时,仅表示单个任务或行为单元而不是方法集合是有意义的. 块是C,Objective-C和C++等编程语言中的高级功能,它允许创建不同 ...
- [Alpha]团队成员贡献分配规则
设计参考 参考了往届团队sigma_rg.NewTeam.hotcode5.软剑攻城的四个评分规则后,希望该规则能队内减轻竞争的紧张气氛的同时,有具体的评分规则. 分配总则 基础分值固定为30分,将剩 ...