from 验证
/*
新版的页面控件值验证
@element 要验证的范围对象
@isValiMust 是否需要验证必填(临时保存的时候就不需要验证必填)
@isByName 是否依赖name寻找控件
@return 验证结果字符串(空为验证通过,非空表示验证不通过,返回的警告信息)
*/
function ValidatePageControlsNew(element, isValiMust, isByName) {
if (typeof isValiMust === 'undefined') {
isValiMust = true;
}
if (typeof isByName === 'undefined') {
isByName = false;
}
var warn = "";
var isMust = undefined;
var $label = null;
var target;
$(element).find('input,select,textarea').each(function (r) {
if (isByName) {//依赖name寻找控件
target = $(this).attr('name');
} else {
target = $(this).attr('id');
}
if (target != undefined) {
//判断是否是必填
if (isValiMust) {
isMust = $(this).attr("isMust");//不需要验证的属性
if (isMust) {
var value = $(this).val();
if (value == '') {
warn = $(this).attr("placeholder");
return false;
}
}
}//判断格式
var format = $(this).attr("fromat");
var fromatwarning = $(this).attr("fromatwarning");
var value = $(this).val();
if (format != undefined && value != "") {//值不能为空,为空就不需要验证
switch (format) {
case "PositiveInt"://正整数 验证自己加 验证什么自己可以提前写好条用OK了
if (!isPositiveInteger(value)) {
warn = fromatwarning;
return false;
}
break;
case "NonnInt"://非负整数(包含0)
if (!isNumber(value)) {
warn = fromatwarning;
return false;
}
break;
case "Tel"://电话(座机或手机)
if (!checkTel(value)) {
warn = fromatwarning;
return false;
}
break;
case "Mobile"://手机
if (!isMobile(value)) {
warn = fromatwarning;
return false;
}
break;
case "Percentage"://百分比
if (!isPosIntegerBetween100(value)) {
warn = fromatwarning;
return false;
}
break;
case "Money"://金额(允许两位小数)
if (!isDecimalMoney(value)) {
warn = fromatwarning;
return false;
}
break;
case "ZipCode"://邮编
if (!isZipCode(value)) {
warn = fromatwarning;
return false;
}
break;
case "IDCard"://18位身份证
if (!checkCard(value)) {
warn = fromatwarning;
return false;
}
break;
default:
break
}
} }
});
return warn;
}
var warnText = ValidatePageControlsNew($("#form"), true, true);//几个参数 自己看方法有介绍 反回结果为空的话 说明验证非空通过
input type="text" name="ZSBZ" id="ZSBZ" class="form-control" ismust="true" fromat="Money" fromatwarning="请输入正确的住宿费格式" placeholder="请输入住宿费安排标准" value="" //placeholder 为空返回的内容 ismust 是否进行为空验证 fromat="Money" 这个就是对数据格式的验证了 看上面的方法 有说明 fromatwarning 数据格式验证不通过的返回值
很方便简洁的from 表单验证
from 验证的更多相关文章
- 【探索】无形验证码 —— PoW 算力验证
先来思考一个问题:如何写一个能消耗对方时间的程序? 消耗时间还不简单,休眠一下就可以了: Sleep(1000) 这确实消耗了时间,但并没有消耗 CPU.如果对方开了变速齿轮,这瞬间就能完成. 不过要 ...
- C# 中参数验证方式的演变
一般在写方法的时候,第一步就是进行参数验证,这也体现了编码者的细心和缜密,但是在很多时候这个过程很枯燥和乏味,比如在拿到一个API设计文档的时候,通常会规定类型参数是否允许为空,如果是字符可能有长度限 ...
- Yii1.1的验证规则
在Yii1.1的数据验证是由CValidator完成,在CValidator中提供了各种基本的验证规则 <?php public static $builtInValidators=array( ...
- 【WCF】使用“用户名/密码”验证的合理方法
我不敢说俺的方法是最佳方案,反正这世界上很多东西都是变动的,正像老子所说的——“反(返)者,道之动”.以往看到有些文章中说,为每个客户端安装证书嫌麻烦,就直接采用把用户名和密码塞在SOAP头中发送,然 ...
- PHP验证用户登录例子-学习笔记
1.基本流程: 2.UML类图: 3.PHP代码: 3.1 index.php <?php /** * Created by PhpStorm. * User: andy * Date: 16- ...
- 客户端的验证插件validator
简单,智能,令人愉悦的表单验证~~~ 官方文档:http://www.niceue.com/validator/ <!DOCTYPE html> <html> <head ...
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(66)-MVC WebApi 用户验证 (2)
系列目录 前言: 回顾上一节,我们利用webapi简单的登录并进行了同域访问与跨域访问来获得Token,您可以跳转到上一节下载代码来一起动手. 继续上一篇的文章,我们接下来演示利用拿到的Token来访 ...
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(65)-MVC WebApi 用户验证 (1)
系列目录 前言: WebAPI主要开放数据给手机APP,其他需要得知数据的系统,或者软件应用,所以移动端与系统的数据源往往是相通的. Web 用户的身份验证,及页面操作权限验证是B/S系统的基础功能, ...
- 再谈C#采集,一个绕过高强度安全验证的采集方案?方案很Low,慎入
说起采集,其实我是个外行,以前拔过阿里巴巴的客户数据,在我博客的文章:C#+HtmlAgilityPack+XPath带你采集数据(以采集天气数据为例子) 中,介绍过采集用的工具,其实很Low的,分析 ...
- jQuery学习之路(8)- 表单验证插件-Validation
▓▓▓▓▓▓ 大致介绍 jQuery Validate 插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供了大量的定制选项,满足应用程序各种需求.该插件捆绑了一套有用的验证方法,包括 ...
随机推荐
- hdu 4825 Xor Sum trie树
Xor Sum Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 132768/132768 K (Java/Others) Proble ...
- js来监控复制粘贴
平时我们在复制网页上面代码到控制台调试时,有时会出现复制过来的代码后面加上了一下描述信息(作者.版权等信息),每次需要删除才能运行,所以今天看看怎么能保证我们粘贴的代码不携带这些信息呢? (funct ...
- ManualResetEvent(ManualResetEvent : EventWaitHandle : WaitHandle)的三个方法
ManualResetEvent mre= new ManualResetEvent(false);(ManualResetEvent : EventWaitHandle : WaitHandle) ...
- ubuntu 16.04 配置远程连接
1.XDMCP远程连接 vi /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf 添加 greeter-show-manual-login=true [X ...
- Verilog HDL Test Bench
As digital systems becomes more complex,it becomes increasingly important to verify the functionalit ...
- UVA-12661 Funny Car Racing (dijkstra)
题目大意:一张有向图,问从起点到终点的最快时间.不过边有点特殊,从u到v的边没开放a秒就关闭b秒. 题目分析:dijkstra算法即可.在从u走到v的时候要注意一下时间. 代码如下: # includ ...
- OBS插件学习入门:一个非常简单的、调节音量的filter
一个非常简单的.调节音量的filter,非线性调节: #include <obs-module.h> #include <math.h> struct volume_data ...
- nyoj762——分解质因数+容斥+二分
第k个互质数 时间限制:1000 ms | 内存限制:65535 KB 难度:4 描述 两个数的a,b的gcd为1,即a,b互质,现在给你一个数m,你知道与它互质的第k个数是多少吗?与m互质的 ...
- Linux命令 ls -l 输出内容含义详解
Linux命令 ls -l s输出内容含义详解 1. ls 只显示文件名或者文件目录 2. ls -l(这个参数是字母L的小写,不是数字1) 用来查看详细的文件资料 在某个目录下键入ls -l可 ...
- leetcode 849. Maximize Distance to Closest Person
In a row of seats, 1 represents a person sitting in that seat, and 0 represents that the seat is emp ...