URL校验
export function validateURL( url) {
const urlregex = /^( https?| ftp) :\/\/( [ a-zA-Z0-9.-] +( :[ a-zA-Z0-9.& %$-] +) *@) *(( 25 [0 - 5 ]| 2 [0 - 4 ][0 - 9 ]| 1 [0 - 9 ]{2 }| [1 - 9 ][0 - 9 ]? ) ( \.( 25 [0 - 5 ]| 2 [0 - 4 ][0 - 9 ]| 1 [0 - 9 ]{2 }| [1 - 9 ]? [0 - 9 ])) { 3} | ( [ a-zA-Z0-9-] +\.) *[ a-zA-Z0-9-] +\.( com| edu| gov| int| mil| net| org| biz| arpa| info| name| pro| aero| coop| museum| [ a-zA-Z] { 2} )) ( :[ 0-9] +) *( \/( $| [ a-zA-Z0-9.,?'\\+& %$
return urlregex.test( url) ;
}
邮箱校验
export function validateEMail( rule, value,callback) {
const reg = /^( [ a-zA-Z0-9] +[ -_\.] ?) +@[ a-zA-Z0-9] +\.[ a-z] +$/;
if( value== '' || value== undefined|| value== null) {
callback( ) ;
} else{
if ( ! reg.test( value)) {
callback( new Error( '请输入正确的邮箱' )) ;
} else {
callback( ) ;
}
}
}
合法IP地址
export function validateIP( rule, value,callback) {
if( value== '' || value== undefined|| value== null) {
callback( ) ;
} else {
const reg = /^( \d{ 1,2} | 1\d\d| 2[ 0-4] \d| 25[ 0-5] ) \.( \d{ 1,2} | 1\d\d| 2[ 0-4] \d| 25[ 0-5] ) \.( \d{ 1,2} | 1\d\d| 2[ 0-4] \d| 25[ 0-5] ) \.( \d{ 1,2} | 1\d\d| 2[ 0-4] \d| 25[ 0-5] ) $/;
if (( ! reg.test( value)) && value != '' ) {
callback( new Error( '请输入正确的IP地址' )) ;
} else {
callback( ) ;
}
}
}
手机号码或者固话校验
export function validatePhoneTwo( rule, value, callback) {
const reg = /^(( 0 \d{2 , 3 }- \d{7 , 8 }) | ( 1 [34578 ]\d{9 })) $/; ;
if ( value == '' || value == undefined || value == null) {
callback( ) ;
} else {
if (( ! reg.test( value)) && value != '' ) {
callback( new Error( '请输入正确的电话号码或者固话号码' )) ;
} else {
callback( ) ;
}
}
}
手机号码校验
export function validatePhone( rule, value,callback) {
const reg = /^[ 1] [ 3-9] [ 0-9] { 9} $/;
if( value== '' || value== undefined|| value== null) {
callback( ) ;
} else {
if (( ! reg.test( value)) && value != '' ) {
callback( new Error( '请输入正确的电话号码' )) ;
} else {
callback( ) ;
}
}
}
固话校验
export function validatePhone( rule, value,callback) {
const reg = /^[ 1] [ 3-9] [ 0-9] { 9} $/;
if( value== '' || value== undefined|| value== null) {
callback( ) ;
} else {
if (( ! reg.test( value)) && value != '' ) {
callback( new Error( '请输入正确的电话号码' )) ;
} else {
callback( ) ;
}
}
}
身份证号码校验
export function validateIdNo( rule, value,callback) {
const reg = /( ^\d{ 15} $) | ( ^\d{ 18} $) | ( ^\d{ 17} ( \d| X| x) $) /;
if( value== '' || value== undefined|| value== null) {
callback( ) ;
} else {
if (( ! reg.test( value)) && value != '' ) {
callback( new Error( '请输入正确的身份证号码' )) ;
} else {
callback( ) ;
}
}
}
自动检验数值的范围
export function checkMax20000( rule, value, callback) {
if ( value == '' || value == undefined || value == null) {
callback( ) ;
} else if ( ! Number( value)) {
callback( new Error( '请输入[1,20000]之间的数字' )) ;
} else if ( value < 1 || value > 20000) {
callback( new Error( '请输入[1,20000]之间的数字' )) ;
} else {
callback( ) ;
}
}
验证是否1-99之间
export function isOneToNinetyNine( rule, value, callback) {
if ( ! value) {
return callback( new Error( '输入不可以为空' )) ;
}
setTimeout(( ) = > {
if ( ! Number( value)) {
callback( new Error( '请输入正整数' )) ;
} else {
const re = /^[ 1-9] [ 0-9] { 0,1} $/;
const rsCheck = re.test( value) ;
if ( ! rsCheck) {
callback( new Error( '请输入正整数,值为【1,99】' )) ;
} else {
callback( ) ;
}
}
} , 0) ;
}
验证是否整数
export function isInteger( rule, value, callback) {
if ( ! value) {
return callback( new Error( '输入不可以为空' )) ;
}
setTimeout(( ) = > {
if ( ! Number( value)) {
callback( new Error( '请输入正整数' )) ;
} else {
const re = /^[ 0-9] *[ 1-9] [ 0-9] *$/;
const rsCheck = re.test( value) ;
if ( ! rsCheck) {
callback( new Error( '请输入正整数' )) ;
} else {
callback( ) ;
}
}
} , 0) ;
}
验证是否整数,非必填
export function isIntegerNotMust( rule, value, callback) {
if ( ! value) {
callback( ) ;
}
setTimeout(( ) = > {
if ( ! Number( value)) {
callback( new Error( '请输入正整数' )) ;
} else {
const re = /^[ 0-9] *[ 1-9] [ 0-9] *$/;
const rsCheck = re.test( value) ;
if ( ! rsCheck) {
callback( new Error( '请输入正整数' )) ;
} else {
callback( ) ;
}
}
} , 1000) ;
}
验证是否是[0-1]的小数
export function isDecimal( rule, value, callback) {
if ( ! value) {
return callback( new Error( '输入不可以为空' )) ;
}
setTimeout(( ) = > {
if ( ! Number( value)) {
callback( new Error( '请输入[0,1]之间的数字' )) ;
} else {
if ( value < 0 || value > 1) {
callback( new Error( '请输入[0,1]之间的数字' )) ;
} else {
callback( ) ;
}
}
} , 100) ;
}
验证是否是[1-10]的小数,即不可以等于0
export function isBtnOneToTen( rule, value, callback) {
if ( typeof value == 'undefined' ) {
return callback( new Error( '输入不可以为空' )) ;
}
setTimeout(( ) = > {
if ( ! Number( value)) {
callback( new Error( '请输入正整数,值为[1,10]' )) ;
} else {
if ( ! ( value == '1' || value == '2' || value == '3' || value == '4' || value == '5' || value == '6' || value == '7' || value == '8' || value == '9' || value == '10' )) {
callback( new Error( '请输入正整数,值为[1,10]' )) ;
} else {
callback( ) ;
}
}
} , 100) ;
}
验证是否是[1-100]的小数,即不可以等于0
export function isBtnOneToHundred( rule, value, callback) {
if ( ! value) {
return callback( new Error( '输入不可以为空' )) ;
}
setTimeout(( ) = > {
if ( ! Number( value)) {
callback( new Error( '请输入整数,值为[1,100]' )) ;
} else {
if ( value < 1 || value > 100) {
callback( new Error( '请输入整数,值为[1,100]' )) ;
} else {
callback( ) ;
}
}
} , 100) ;
}
验证是否是[0-100]的小数
export function isBtnZeroToHundred( rule, value, callback) {
if ( ! value) {
return callback( new Error( '输入不可以为空' )) ;
}
setTimeout(( ) = > {
if ( ! Number( value)) {
callback( new Error( '请输入[1,100]之间的数字' )) ;
} else {
if ( value < 0 || value > 100) {
callback( new Error( '请输入[1,100]之间的数字' )) ;
} else {
callback( ) ;
}
}
} , 100) ;
}
是否大写字母
export function validateUpperCase( val) {
const reg = /^[ A-Z] +$/;
return reg.test( val) ;
}
密码校验
export const validatePsdReg = ( rule, value, callback) = > {
if ( ! value) {
return callback( new Error( '请输入密码' ))
}
if ( ! /^( ?! [ \d] +$) ( ?! [ a-zA-Z] +$) ( ?! [ ^\da-zA-Z] +$) ( [ ^\u4e00-\u9fa5\s] ) { 6,20} $/.test( value)) {
callback( new Error( '请输入6-20位英文字母、数字或者符号(除空格),且字母、数字和标点符号至少包含两种' ))
} else {
callback( )
}
}
纯数字校验
export const validateNumber = ( rule, value, callback) = > {
let numberReg = /^\d+$| ^\d+[ .] ?\d+$/
if ( value != = '' ) {
if ( ! numberReg.test( value)) {
callback( new Error( '请输入数字' ))
} else {
callback( )
}
} else {
callback( new Error( '请输入值' ))
}
}
中文校验
export const validateContacts = ( rule, value, callback) = > {
if ( ! value) {
return callback( new Error( '请输入中文' ))
}
if ( ! /^[ \u0391-\uFFE5A-Za-z] +$/.test( value)) {
callback( new Error( '不可输入特殊字符' ))
} else {
callback( )
}
}
验证数字输入框最大数值
export function checkMaxVal( rule, value,callback) {
if ( value < 0 || value > 最大值) {
callback( new Error( '请输入[0,最大值]之间的数字' )) ;
} else {
callback( ) ;
}
}
验证内容是否包含英文数字以及下划线
export function isPassword( rule, value, callback) {
const reg = /^[ _a-zA-Z0-9] +$/;
if( value== '' || value== undefined|| value== null) {
callback( ) ;
} else {
if ( ! reg.test( value)) {
callback( new Error( '仅由英文字母,数字以及下划线组成' )) ;
} else {
callback( ) ;
}
}
}