jquery 表单校验
<link type="text/css" href="<%=basepath%>css/form/validate.css"
rel="stylesheet" />
<script type="text/javascript"
src="<%=basepath%>js/common/jquery-1.9.1.js"></script>
<script type="text/javascript"
src="<%=basepath%>js/common/jquery.validate.min.js"></script>
<script type="text/javascript"
src="<%=basepath%>/js/common/jquery.form.js"></script>
<script type="text/javascript"
src="<%=basepath%>/js/validate/userValidateMethods.js"></script>
<style type="text/css">
<script>
$(document).ready(function(){
$("#testForm").validate({
//提交成功时的回调函数
submitHandler : function(){
var datas = $("#testForm").serializeArray();
$.post('<%=basepath%>jsp/testService/test.do', datas, function(result){
alert(result.message);
if(result.code == "0"){
//$("#submitBtn").attr("readonly","true");
//$("#draftBtn").attr("readonly","true"); }
});
},
onfocusout: function(element){
$(element).valid();
},
rules: {
'projectinfo': {
checkProjectName : true
},
'customercompany': {
required : true
},
'customerlinkman' : {
required : true
},
'customermobile' : {
required : true,
isMobile : true
},
'customerphone' : {
isPhone : true
}
},
messages: {
'projectinfo': {
checkProjectName : "没有可选项目,必须填写项目信息"
},
'customercompany' : {
required : "请填写企业名称"
},
'customerlinkman' : {
required : "请填写联系人"
},
'customermobile' : {
required : "请填写联系人手机号码",
isMobile : "请填写正确的手机号码"
},
'customerphone' : {
isPhone : "请填写正确的电话号码"
}
}
});
});
</script>
其中userValidateMethods.js为我们自定义的校验方法,方法由我们来实现。代码如下:
// 手机号码验证
jQuery.validator.addMethod("isMobile", function(value, element) {
var length = value.length;
var mobile = /^0?(13[0-9]|15[012356789]|18[0236789]|14[57])[0-9]{8}$/;
return this.optional(element) || (length == 11 && mobile.test(value));
}, "请正确填写您的手机号码"); // 联系电话(手机/电话皆可)验证
jQuery.validator.addMethod('isPhone', function(value,element) {
var length = value.length;
var mobile = /^0?(13[0-9]|15[012356789]|18[0236789]|14[57])[0-9]{8}$/;
var tel = /(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,8}/;
return this.optional(element) || (tel.test(value) || mobile.test(value)); }, '请正确填写您的联系电话'); //当项目名称没有时,必须填写项目信息
jQuery.validator.addMethod('checkProjectName', function(value,element) {
if($("#projectname").val() == ''){
return value != '';
}
return true; }, '请正确填写您的联系电话'); // 手机号码范围验证
jQuery.validator.addMethod("validNumRange", function (value, element){ var flag=false;
if(value){
value=parseInt(value);
if(!isNaN(value)){
flag=true;
}
}
if(flag&&0<=value&&value<=10){
flag=true;
}else{
flag=false;
}
return flag; }, "数值范围为0-10");
另外一种是由事件驱动的校验方式:
//同样,需引入依赖的js,css
<script>
数字范围验证
function validateForm(){
return $("#testForm").validate({
onfocusout: function(element){
$(element).valid();
},
rules: {
'score': {
required: true,
validNumRange:true
}
},
messages: {
'score': {
required: "评分必填",
validNumRange:"范围不对" }
}
}); } $(function(){ validateForm(); $("#testBtn").click(function(){
if(validateForm().form()){
//序列化表单
var score= $("#testForm").serialize();
$.ajax( {
url:'${pageContext.request.contextPath }/jsp/testService/test2.do',
//执行指定的方法
data:score,
type:'post',
success:function(data) {
if(data.code==0){
alert("评议评分成功 !"); }
if(data.code==1){
alert("评议评分失败 !");
}
}, });
}else{ return false;
} }); });
</script>
jquery 表单校验的更多相关文章
- 关于jQuery表单校验
<style> .red{border: 1px solid red;} .wrong-tip{color: red;} </style> <form action=&q ...
- day32(表单校验js和jquery表单校验)
校验用户名.密码.密码一直性. <style> .error { color: red } .success { color: green } </style> <scr ...
- JQuery -- Validate, Jquery 表单校验
1. Jquery 表单验证需要插件 jQuery validation 1.7 ---验证插件需要:jQuery 1.3.2 或 1.4.2版本 http://jquery.bassistance ...
- 关于jQuery表单校验的应用
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/stri ...
- jQuery表单校验
主要特性: 表单提交前对所有数据进行校验,不符合不让提交(validate) 如果表单校验不通过,自动focus到第一个错误的域 自动在控件后面显示错误提示内容(error message) 支持根据 ...
- JQuery 表单校验插件 validate 使用纪录
JS诞生其中一个目的就是将, 服务器端的校验在客户端提前完成, 以避免用户提交数据后, 后台校验报错的糟糕用户体验. 基于JQuery库的有很多优秀的插件, 其中对于浏览器端表单进行验证的基本功能也有 ...
- Jquery表单验证插件validate
写在前面: 在做一些添加功能的时候,表单的提交前的验证是必不可少的,jquery的validate插件就还可以,对于基本的需求已经够了.这里记录下基本的用法. 还是写个简单的demo吧 <htm ...
- 利用jquery.validate以及bootstrap的tooltip开发气泡式的表单校验组件
表单校验是页面开发中非常常见的一类需求,相信每个前端开发人员都有这方面的经验.网上有很多成熟的表单校验框架,虽然按照它们默认的设计,用起来没有多大的问题,但是在实际工作中,表单校验有可能有比较复杂的个 ...
- bootstrap+jQuery.validate表单校验
谈谈表单校验 这大概是一种惯例,学习前台后台最开始接触的业务都是用户注册和登录.现在社会坚持以人为本的理念,在网站开发过程同样如此.User是我们面对较多的对象,也是较核心的对象.最开始的用户注册和登 ...
随机推荐
- 【C++】vector内存机制和性能分析
转自:https://blog.csdn.net/mfcing/article/details/8746256 一些好的公司校园招聘过程中(包括笔试.面试环节),经常会涉及到STL中vector的使用 ...
- DotNetBar中Supergrid显示树形数据
1.向窗体中拖一个Supergrid控件 2.添加列ID,NAME,MATH,CN,SEX 3.在任务窗格中勾选“Show Tree Lines”和“Show Tree Buttons” 4.添加数据 ...
- ThinkPHP模板的知识
php框架 一.真实项目开发步骤: 多人同时开发项目,协作开发项目.分工合理.效率有提高(代码风格不一样.分工不好) 测试阶段 上线运行 对项目进行维护.修改.升级(单个人维护项目,十分困难,代码风格 ...
- Django中media的配置
Django中media的配置 Django中media文件夹是我们文件(比如头像.文件.视频等)数据十分重要的存放处,这里以用户头像的上传以及media文件的访问为例为大家详细讲解下media的相关 ...
- JAVA使用log4j(另SSM框架中使用log4j)
1.引入jar包 log4j-1.2.13.jar 2.src下建立配置文件:log4j.properties #不+All,只写后一种LOG log4j.rootLogger =ALL,system ...
- mysql六种日志
错误日志 MySQL服务启动和关闭过程中的信息以及其它错误和警告信息.默认在数据目录下 普通查询日志 用于记录select查询语句的日志.general_log.general_log_file 默认 ...
- c# 对象的深拷备
C# 引用类型对象在拷备时,一般有浅拷备与深拷备,浅拷备指向的是同一对象的引用地址,一个对象的修改必然会影响另一个对象,而深拷备是直接拷备对象的内容,而不是引用,拷备后的对象拥有新的引用,这里主要介绍 ...
- eShopOnContainers 看微服务 ②:配置 启动
一.什么是docker Docker 是一个开源项目,通过把应用程序打包为可移植的.自给自足的容器(可以运行在云端或本地)的方式,实现应用程序的自动化部署. 使用 Docker 的时候,需要创建一个应 ...
- SpringBoot 之 thymeleaf
thymeleaf 的maven 配置我们都知道: <dependency> <groupId>org.springframework.boot</groupId> ...
- ---dd-wrt memo
http://blog.csdn.net/fyh2003/article/details/44458657http://blog.csdn.net/u010189241/article/details ...