/*字符串去空格*/ function trimStrOT(str){ return str==null||str==''?'':str.replace(/\s+/g,''); } /*字符串类型验证*/ function strTypeJdg(str,jdgType){ if (trimStrOT(str)!=''){ var jdgStr=''; switch(jdgType){ case null: jdgStr='required';/*非空*/ break; case 'digital':/*数字*/ jdgStr=/^[0-9]+([.]\d{1,4})?$/; break; case 'pInteger':/*非0正整数*/ jdgStr=/^\+?[1-9][0-9]*$/; break; case 'money':/*金钱*/ jdgStr=/^[0-9]*(\.[0-9]{1,7})?$/; break; case 'username':/*数字、26个英文字母或者下划线组成*/ jdgStr=/[\u4E00-\u9FA5\w]{2,}$/; break; case 'password':/*密码组成判断,字母开头,长度在6~20之间,只能包含字符、数字和下划线*/ jdgStr=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){5,19}$/; break; case 'chn':/*汉字*/ jdgStr=/^[\u4e00-\u9fa5]{0,}$/; break; case 'tel':/*座机、传真号码*/ jdgStr=/^[0-9]{3,4}(\-)[0-9]{7,8}(\-[0-9]{1,4})?$/; break; case 'mobile':/*手机号码*/ jdgStr=/^(13[0-9]|14[0-9]|15[0-9]|18[0-9])\d{8}$/; break; case 'mail':/*邮箱*/ jdgStr=/^[a-zA-Z0-9_\-]{1,}@[a-zA-Z0-9_\-]{1,}\.[a-zA-Z0-9_\-.]{1,}$/; break; case 'postal':/*邮政编码*/ jdgStr=/^[0-9]{6}$/; break; case 'date':/*中文日期*/ jdgStr=/^(\d{4})-(0\d{1}|1[0-2])-(0\d{1}|[12]\d{1}|3[01])$/; break; case 'ID':/*身份证*/ jdgStr=/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/; break; default: break; } return jdgStr!=''?jdgStr!='required'?jdgStr.test(str):trimStrOT(str)!='':false; }else{ return false; } } /*提示组件显示隐藏*/ function tipsEleOperation(obj,tipsText,isValidatePass){ /*判断组件是否存在*/ var eleContainer=obj.parents('.eleContainer:first');/*提示组件的元素容器*/ /*寻找提示组件*/ var tipsEle=eleContainer.find('.tipsEle'); if(tipsEle.size()==0){/*提示不存在,插入组件*/ /*组件拼装*/ var tipsEleStr='' +'
' +'
' +'
' +'' +'' +'
' +'
' +'
'; /*组件插入*/ eleContainer.append(tipsEleStr); /*插入完毕后先隐藏*/ tipsEle=eleContainer.find('.tipsEle');/*刷新获取的组件*/ tipsEle.hide(); } /*改变文本*/ tipsEle.find('.titleText').html(tipsText); /*判断是否验证通过*/ if(isValidatePass){/*验证通过*/ /*操作提示组件,若显示则隐藏,若隐藏则不做操作*/ if(!tipsEle.is(":hidden")){ tipsEle.hide(); } }else{/*验证不通过*/ /*操作提示组件,若隐藏则显示,若显示则不做操作*/ if(tipsEle.is(":hidden")){ tipsEle.show(); } } } /* * 清除区域内提示组件 * areaID:区域ID */ function clearAreaTipsEle(areaID){ $('#'+areaID).find('.tipsEle').hide(); } /* * 控件值类型验证 * jdgType:验证类型,值如下: * 数字(digital),非0正整数(pInteger),金钱(money),用户名(username) * 密码(password),汉字(chn),固定电话、传真(tel),手机(mobile) * 邮箱(mail),日期(date),身份证(ID),非空验证(null) * tipsText:提示文本 * required:是否必填项,值:true/false * */ function commonTypeJdg(id,jdgType,tipsText,required){ var obj = $("#" + id); var str=obj.val(); var validateResult=required?strTypeJdg(str,jdgType):trimStrOT(str)!=''?strTypeJdg(str,jdgType):true; tipsEleOperation(obj,tipsText,validateResult); return validateResult; } /* * 金钱、长度验证 * jdgType:验证类型,值如下: * 数字(digital),非0正整数(pInteger),金钱(money),用户名(username) * 密码(password),汉字(chn),固定电话、传真(tel),手机(mobile) * 邮箱(mail),日期(date),身份证(ID),非空验证(null) * startLen:开始日期 * endLen:结束日期 * tipsText:提示文本 * required:是否必填项,值:true/false * */ function moneyAndLengthJdg(id, jdgType, startLen, endLen, tipsText, required){ var obj = $('#' + id); var str = obj.val(); /*获取该对象的值*/ var validateResult = false; if(trimStrOT(str) != ''){/*对当前对象去空格之后判断不为空*/ if(startLen!=null&&endLen!=null&&startLen