/**
* 增加大于某个值的验证
*/
window.ParsleyValidator.addValidator(
'greater',
function (value,greater) {
if(isNaN(value)||isNaN(greater)){
return false;
}
return parseFloat(value)>parseFloat(greater);
}, 30);
/**
* 小于某个值的验证
*/
window.ParsleyValidator.addValidator(
'lesser',
function (value,lesser) {
if(isNaN(value)||isNaN(lesser)){
return false;
}
return parseFloat(value)<=parseFloat(lesser);
}, 30); /**
* 条件必须验证
*/
window.ParsleyValidator.addValidator(
'conditionalrequired',
function (value,requirements) {
if (requirements[1] == $(requirements[0]).val() && '' == $.trim(value))
return false;
return true;
}, 30); /**
* 手机号验证
*/
window.ParsleyValidator.addValidator(
'mobile',
function (value) {
var exp = /^1[345789][0-9]{9}$/;
return value&&exp.test(value);
}, 30);
/**
* 邮编验证
*/
window.ParsleyValidator.addValidator(
'zipcode',
function (value) {
var exp = /^[1-9][0-9]{5}$/;
return value&&exp.test(value);
}, 30);
/**
* 密码验证
*/
window.ParsleyValidator.addValidator(
'password',
function (value) {
var all = /^[\da-zA-Z`=\-\[\];',\.~!@#\$%\^&*\\\/\(\)_\+\|\{\}:"<>\?]+$/;
var numReg = /[\d]+/, charReg = /[a-zA-Z]+/, specReg = /[`=\-\[\];',\.~!@#\$%\^&*\\\/\(\)_\+\|\{\}:"<>\?]+/;
return value&&all.test(value)&&numReg.test(value)&&charReg.test(value)&&specReg.test(value);
}, 30);
/**
* 手机号或邮箱验证
*/
window.ParsleyValidator.addValidator(
'mobileandemail',
function (value) {
var emailPattern= /^[\w!#$%&'*+/=?^_`{|}~-]+(?:\.[\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\w](?:[\w-]*[\w])?\.)+[\w](?:[\w-]*[\w])?$/;
var mobilePattern = /^1[345789][0-9]{9}$/;
return value&&(emailPattern.test(value)||mobilePattern.test(value));
}, 20);
/**
* 多邮箱验证
*/
window.ParsleyValidator.addValidator(
'emails',
function (value,counts) {
if(!counts||Object.prototype.toString.call( counts ) !== '[object Array]'||counts.length!=2){
return false;
}
var emailsPatternBase = "[\\w!#$%&'*+/=?^_`{|}~-]+(?:\\.[\\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\\w](?:[\\w-]*[\\w])?\\.)+[\\w](?:[\\w-]*[\\w])?";
var reg = "^" + emailsPatternBase + "([,]" + emailsPatternBase + "){" + (counts[0]-1) + "," + (counts[1]-1) + "}[,]?$";
var emailsReg = new RegExp(reg);
return value&&emailsReg.test(value);
}, 30);
/**
* 小数位数验证
*/
window.ParsleyValidator.addValidator(
'numberdigit',
function (value,digit) {
if(digit==null||digit=='undefined'){
return false;
}
if(typeof digit !='number'){
return false;
}
var reg='^-?(?:\\d+|\\d{1,3}(?:,\\d{3})+)?(?:\\.\\d{1,'+digit+'})?$'
var numberReg = new RegExp(reg);
return value&&(numberReg.test(value));
}, 30);
/**
* 视频格式验证
*/
window.ParsleyValidator.addValidator(
'video',
function (value) {
if(value==null||value==''){
return false;
}
var video = value.indexOf('?') == -1 ? value : value.substring(0, value.indexOf('?'));
return video.substring(video.length-4).toLowerCase() === '.swf';
}, 30);

js 正则(部分)的更多相关文章

  1. js正则

    JS正则 test:判断字符串是否符合规定的正则 rep = /\d+/; rep.test("asdfoiklfasdf89asdfasdf") # true rep = /^\ ...

  2. js正则匹配的一个日常应用

    应用实例 1 /** 将段落中的 \n 转换为 <p></p>, 规范存储 */ 2 function formatParagraphForStore(val) { 3 var ...

  3. jS正则和WEB框架Django的入门

    JS正则 -test 判断字符串是否符合规定的正则表达式 -exec 获取匹配的数据 test的例子: 从上述的例子我们可以看出,如果rep.test匹配到了就返回true,否则返回false exe ...

  4. js正则实现二代身份证号码验证详解

    js正则实现二代身份证号码验证详解 根据[中华人民共和国国家标准 GB 11643-1999]中有关公民身份号码的规定,公民身份号码是特征组合码,由十七位数字本体码和一位数字校验码组成.排列顺序从左至 ...

  5. js 正则 以字母开头必须有 大小写字母数字组成 可以有“@"或 ”.“

    js  正则  以字母开头必须有 大小写字母数字组成 可以有“@"或 ”.“ var reg = /^[a-zA-Z]{1}(?=.*[a-z])(?=.*[A-Z])[a-zA-Z\d_@ ...

  6. 手机号码js正则验证

    手机号码js正则验证 var myreg = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1}))+\d{8})$/; if (!myreg.test($(" ...

  7. js正则标志/g /i /m的用法,以及实例

    js正则标志/g /i /m的用法,以及实例   正则的思想都是一样的,但是具体的写法会有所不同,在这里提到的/g,/i,/m在其他的地方也许就不能用了. 一,js正则标志/g,/i,/m说明 1,/ ...

  8. 记录一下JS正则的坑

    JS正则的单行模式有点问题 总之 . 符号匹配换行符号会有问题 暂时的解决方案是 html = html.replace(/[\r\n]/g,""); 附加一个 html = ht ...

  9. 奇怪的JS正则之 /[A-z]/.test("\\"); // true

    本文是在一个国外介绍JS的网站上转载过来的,作者很逗,先是举例JS让人XX的例子,再动手实践发现JS隐藏的黑知识.为什么 /[A-z]/.test("\\"); 是 true ,你 ...

  10. 撸一个JS正则小工具

    写完正则在浏览器上检测自己写得对不对实在是不方便,于是就撸了一个JS正则小demo出来. demo demo展示 项目地址 代码部分 首先把布局样式先写好. <!DOCTYPE html> ...

随机推荐

  1. C1FlexGrid双grid滚动条联动

    利用AfterScroll事件,来实现双grid联动. private void Grid_AfterScroll(object sender, RangeEventArgs e) { try { i ...

  2. think--数据库的设置

    1.在项目下的Common下的Conf下的config.php 配置: 'DB_TYPE' => 'mysql', // 数据库类型 'DB_HOST' => 'localhost', / ...

  3. javascript-文件File转换成base64格式

    不能直接访问用户计算机中的文件,一直都是Web应用开发中的一大障碍.2000年以前,处理文件的唯一方式就是在表单中加入<input type="file">字段,仅此而 ...

  4. 矩阵类的代码(C++)

    The Codes of Matrix Class Matrix.h:#ifndef MATRIX_H#define MATRIX_H #include<iostream> #includ ...

  5. 2 个案例带你迅速入门 Python Flask 框架

    Flask 是 python 中非常流行的一个 web 框架,容易学习.这篇文章主要通过 2 个实际案例讲解 Flask 如何使用.第一个例子是实现一个调用公交车到站信息的接口服务:第二个例子是通过接 ...

  6. 网络传输 socket

    一.Socket语法及相关 前言:osi七层模型: 第七层:应用层.     各种应用程序协议,如HTTP,FTP,SMTP,POP3. 第六层:表示层.     信息的语法语义以及它们的关联,如加密 ...

  7. mac OS git关联github

    正在更新 mac OS 默认安装了git  git -v 查看版本 mac OS 默认安装了ssh  ssh -v 查看版本 1.设置username和email(github每次commit都会记录 ...

  8. Java Web:jstl处理字符串

    用法:${fn:methodName(args....)} 在使用这些函数之前必须在JSP中引入标准函数的声明<%@ taglib prefix="fn" uri=" ...

  9. JS的String()、toString()、valueOf()的一些隐秘特性

    toString()方法 要把一个值转换为一个字符串,最常用的就是,使用几乎每个值都有的toString()方法,这个方法唯一要做的就是返回相应值的字符串表现. 数值.布尔值.对象和字符串值(没错,每 ...

  10. Swift-Realm数据库的使用详解

    Swift-Realm数据库的使用详解 概述 Realm 是一个跨平台的移动数据库引擎,其性能要优于 Core Data 和 FMDB - 移动端数据库性能比较, 我们可以在 Android 端 re ...