今天编写一个表单验证程序,我来说一下今天遇到的坑:程序不是通过submit按钮提交验证的,是在自己写的一个方法中提交的,出现了表单无法验证的情况。然后我就了解了一下jquery validate的验证方法。

    jquery validate表单验证方式有三个:

    1、直接通过submit方式提交,提交时自动验证(常用的方法,不懂得可以查看 菜鸟教程-validate使用

    2、如果不是submit提交,比如在jquery中的某个事件中,调用提交表单事件的情况,在此时,1中的情况就不适用了(可能出现表单不验证的方法),这也是我遇到的问题

      这就需要自己先编写一个表单验证程序,验证通过后,再提交表单。

     //编写的表单验证程序 
     function validateForm() {
return $("#cashForm").validate({
rules: {
name: {
required: true
},
phone: {
required: true,
pattern: /^0?(13[0-9]|15[012356789]|18[012346789]|14[57]|17[678]|170[059]|14[57]|166|19[89])[0-9]{8}$/
},
carId: {
required: true,
pattern: /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/
},
number: {
required: true,
remote: {
url: "${base}/business/cash/check_card",
cache: false
}
}
},
messages: {
phone: {
pattern: "${message("common.validate.pattern")}"
},
number: {
remote: "${message("common.validate.pattern")}"
}
}
}).form();
}

    提交表单事件:(以下函数是验证码验证通过后,触发的表单验证,红色加粗部分,大家写的时候可以直接用此部分)

     $(document).ready(function(){
var $cashForm = $("#cashForm"); //获取验证码按钮绑定点击事件
$(".verIfi-btn").on("click",verification); $("#sms_check").click(function () {
var smsCaptcha = $("input[name='smsCaptcha']").val();
var smsCaptchaId = $("input[name='smsCaptchaId']").val();
$.ajax({
url: "${base}/business/cash/sms_check",
type: "GET",
data:{
smsCaptchaId: smsCaptchaId,
smsCaptcha: smsCaptcha
},
dataType: "json",
cache: false,
success: function(message) {
if (message.check){
if(validateForm()){
$cashForm.submit();
}

}
}
});
});
});

    3、验证一个单独的表单元素(校验规则写在空间中的时候使用)

    例如:

<textarea id="ccomment" name="comment" maxlength="200" required></textarea>

    验证方法:

    function validateForm() {
$("#commentForm").validate().element($("#ccomment"));
} function doSubmit(){
//do other things
//验证通过后提交
if(validateForm()){
  $("#commentForm").submit()
}
}

    参考:http://layznet.iteye.com/blog/1168811

validate表单验证-单独验证的更多相关文章

  1. 基于jQuery的Validate表单验证

    表单验证可以说在前端开发工作中是无处不在的~ 有数据,有登录,有表单, 都需要前端验证~~  而我工作中用到最多的就是基于基于jQuery的Validate表单验证~  就向下面这样~ 因为今天有个朋 ...

  2. ASP.NET MVC Jquery Validate 表单验证的多种方式

    在我们日常开发过程中,前端的表单验证很重要,如果这块处理不当,会出现很多bug .但是如果处理的好,不仅bug会很少,用户体验也会得到很大的提升.在开发过程中我们可以不借助 JS 库,自己去手写 JS ...

  3. jQuery Validate 表单验证插件----Validate简介,官方文档,官方下载地址

     一. jQuery Validate 插件的介绍 jQuery Validate 插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供了大量的定制选项,满足应用程序各种需求.该插件捆 ...

  4. 【干货】Laravel --Validate (表单验证) 使用实例

    前言 : Laravel 提供了多种方法来验证应用输入数据.默认情况下,Laravel 的控制器基类使用ValidatesRequests trait,该trait提供了便利的方法通过各种功能强大的验 ...

  5. [转]ASP.NET MVC Jquery Validate 表单验证的多种方式介绍

    在我们日常开发过程中,前端的表单验证很重要,如果这块处理不当,会出现很多bug .但是如果处理的好,不仅bug会很少,用户体验也会得到很大的提升.在开发过程中我们可以不借助 JS 库,自己去手写 JS ...

  6. Jquery Validate 表单验证的多种方式

    ASP.NET MVC Jquery Validate 表单验证的多种方式 在我们日常开发过程中,前端的表单验证很重要,如果这块处理不当,会出现很多bug .但是如果处理的好,不仅bug会很少,用户体 ...

  7. jQuery-easyui和validate表单验证实例

    jQuery EasyUI 表单 - 表单验证插件validatebox 使用时需要向页面引入两个css文件如下: <link rel="stylesheet" href=& ...

  8. summernote富文本编辑器配合validate表单验证无法进行表单提交的问题

    1.使用summernote富文本编辑器提交图片到服务器 在使用bootstrap中,我们用到了summernote富文本编辑器,使用summernote将图片上传到服务器中,参考我的上篇文章http ...

  9. thinkphp图片上传+validate表单验证+图片木马检测+缩略图生成

    目录 1.案例 1.1图片上传  1.2进行图片木马检测   1.3缩略图生成   1.4控制器中调用缩略图生成方法 1.案例 前言:在thinkphp框架的Thinkphp/Library/Thin ...

随机推荐

  1. kali apt update 错误——下列签名无效: EXPKEYSIG ED444FF07D8D0BF6 Kali Linux Repository

    这是因为key过期了 wget -q -O - https://archive.kali.org/archive-key.asc | apt-key add apt update

  2. java 依赖注入

    https://blog.csdn.net/coderder/article/details/51897721 前言 在软件工程领域,依赖注入(Dependency Injection)是用于实现控制 ...

  3. DBCP 数据源获取连接

    Main package p1; import com.JdbcUtils; import org.apache.commons.dbcp.BasicDataSource; import org.ap ...

  4. 第3节 Scala中的模式匹配:1 - 5

    7.    模式匹配和样例类 Scala有一个十分强大的模式匹配机制,可以应用到很多场合:如switch语句.类型检查等.并且Scala还提供了样例类,对模式匹配进行了优化,可以快速进行匹配. 7.1 ...

  5. Caused by: android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an application

    在广播中启动一个Dialog时出现如下错误信息:Caused by: android.view.WindowManager$BadTokenException: Unable to add windo ...

  6. 「HNOI2016」大数

    题目描述 给定一个质数\(p\)和一个数字序列,每次询问一段区间\([l,r]\), 求出该序列区间\([l,r]\)内的所有子串,满足该子串所形成的数是\(p\)的倍数(样例的解释也挺直观的) 基本 ...

  7. Django 学习视图之FBV与CBV

    一. CBV与FBV CBV:Class Based View FBV:Function Based View 我们之前写过的都是基于函数的view,就叫FBV.还可以把view写成基于类的,那就是C ...

  8. list.Except()

    差集 List<string> list = new List<string>() { ", ", ", }; List<string> ...

  9. HTML相关知识点(2)

     CSS: 字体: 网页默认字体16px; 网站通用字体大小14px 最小是12px,最大无限大 单位换算:1em=16px 选择器:标签选择器:选择页面中所有指定标签,权重为1 通配符选择器:选择所 ...

  10. java中的 RSA加密

    package com.cn.test.rsa; import java.math.BigInteger; import java.security.KeyFactory; import java.s ...