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是我们面对较多的对象,也是较核心的对象.最开始的用户注册和登 ...
随机推荐
- [蓝桥杯]PREV-10.历届试题_幸运数
问题描述 幸运数是波兰数学家乌拉姆命名的.它采用与生成素数类似的“筛法”生成 . 首先从1开始写出自然数1,,,,,,.... 就是第一个幸运数. 我们从2这个数开始.把所有序号能被2整除的项删除,变 ...
- 图的遍历——DFS(矩形空间)
首先,这里的图不是指的我们一般所说的图结构,而是大小为M*N的矩形区域(也可以看成是一个矩阵).而关于矩形区域的遍历问题经常出现,如“寻找矩阵中的路径”.“找到矩形区域的某个特殊点”等等之类的题目,在 ...
- dns缓存刷新时间是多久?dns本地缓存时间介绍
原文: http://www.winwin7.com/JC/4742.html dns缓存刷新时间是多久?一般来说,我们只知道DNS解析是互联网绝大多数应用的实际寻址方式,在我们打开某站点,DNS返回 ...
- 开源项目初涉(C++自我学习开始)
版权声明:本文为博主原创文章,未经博主允许不得转载. https://i.cnblogs.com/EditPosts.aspx?postid=8428885 临近2018农历新年,我还在上班,哈哈. ...
- Mac平台下部署UE4工程到iOS设备的流程
1.开发环境 UE4.Xcode.iOS版本情况如下: 1.UE4:当前最新版本Unreal Engine 4.17.2. 2.Xcode:当前最新版本Xcode9.0. 3.iOS:当前最新版本iO ...
- 学习C++,应该循序渐进的看哪些书?
在某博客上看到的一个C++书籍阅读清单,可以参考下: 阶段 1<Essential C++>这是一本内容不多但很实用的C++入门书籍,强调快速上手与理解C++编程.本书主要围绕一系列逐渐复 ...
- Android下的几种时间格式转换
更多更全的工具类,请参考github上的Blankj/AndroidUtilCode 将毫秒转换为小时:分钟:秒格式 public static String ms2HMS(int _ms){ Str ...
- Django 部署(Nginx+uwsgi)
使用 uwsgi 来部署 安装 uwsgi sudo pip install uwsgi --upgrade 使用 uwsgi 运行项目 uwsgi --http :8001 --chdir /pat ...
- php状态设计模式
状态设计模式的关键就是,环境中拥有所需的全部状态对象,每个状态对象又引用了环境对象:环境对象通过维护一个当前状态属性(用于存放状态对象)从而对所需的全部状态对象产生影响. 下面演示了一个简单的状态设计 ...
- linux百万并发之 tcp_mem
百万并发之 tcp_mem 在服务端,连接达到一定数量,诸如50W时,有些隐藏很深的问题,就不断的抛出来. 通过查看dmesg命令查看,发现大量TCP: too many of orphaned ...