123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229 |
- /*字符串去空格*/
- 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='<span class="tipsEle eleVAlignM">'
- +'<div class="tipsContent eleShadow eleRadius">'
- +'<div class="tipsArrow"><div></div></div>'
- +'<div class="tipsTitle">'
- +'<span class="commonIcon icon-warning eleVAlignM"></span>'
- +'<span class="titleText textS12 eleVAlignM"></span>'
- +'</div>'
- +'</div>'
- +'</span>';
- /*组件插入*/
- 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<endLen){
- /*开始 结束长度均不为空 且 开始值小于结束值*/
- if(typeof str!='string')str += '';
- var length = str.replace(/[^x00-xff]/g,'01').length;
- validateResult=(startLen<=length&&length<=endLen)&&strTypeJdg(str,jdgType);
- }else{
- validateResult=false;
- }
- }else {/*对其是否必填*/
- validateResult=required?false:true;
- }
- tipsEleOperation(obj,tipsText,validateResult);
- return validateResult;
- }
- /*
- *字符串长度验证
- * startLen:最小长度
- * endLen:最大长度
- * tipsText:提示文本
- * required:是否必填项,值:true/false
- * */
- function commonLengthJdg(id,startLen,endLen,tipsText,required){
- var obj = $("#" + id);
- var str=obj.val();
- var validateResult=false;
- if (trimStrOT(str)!=''){
- if(startLen!=null&&endLen!=null&&startLen<endLen){
- if (typeof str != 'string')str += '';
- var length=str.replace(/[^x00-xff]/g,'01').length;
- validateResult=startLen<=length&&length<=endLen;
- }else{
- validateResult=false;
- }
- }else{
- validateResult=required?false:true;
- }
- tipsEleOperation(obj,tipsText,validateResult);
- return validateResult;
- }
- /*
- *2个日期前后验证
- * startID:开始日期控件id
- * endID:结束日期控件id
- * tipsText:提示文本
- * required:是否必填项
- * */
- function doubleDateJdg(startID, endID, tipsText,required) {
- var startDateObj = $("#" + startID);
- var endDateObj = $("#" + endID);
- var startDate=trimStrOT(startDateObj.val());
- var endDate=trimStrOT(endDateObj.val());
- var validateResult=false;
- if(startDate!=''&&endDate!=''){
- var d1 = new Date(startDate.replace(/\-/g, "\/"));
- var d2 = new Date(endDate.replace(/\-/g, "\/"));
- validateResult=startDate!=''&&endDate!=''&&d1<d2;
- tipsEleOperation(startDateObj,tipsText,validateResult);
- }else{
- validateResult=required?false:true;
- }
- return validateResult;
- }
- /*
- * 重复密码验证
- * pwdID:密码控件id
- * rePwdID:重复密码控件id
- * tipsText:提示文本
- * required:是否必填项
- * */
- function passwordJdg(pwdID,rePwdID,tipsText,required) {
- var passwordObj = $("#" + pwdID);
- var rePasswordObj = $("#" + rePwdID);
- var password=trimStrOT(passwordObj.val());
- var rePassword=trimStrOT(rePasswordObj.val());
- var validateResult=false;
- if(password!=''&&rePassword!=''){
- validateResult=password===rePassword;
- tipsEleOperation(rePasswordObj,tipsText,validateResult);
- }else{
- validateResult=required?false:true;
- }
- return validateResult;
- }
- /*对比前后两个值*/
- function compareValJdg(beforeID, afterID){
- var beforeObj = $("#" + beforeID);
- var afterObj = $("#" + afterID);
- var beforeVal = trimStrOT(beforeObj.val());
- var afterVal = trimStrOT(afterObj.val());
- if(beforeVal == afterVal){
- beforeObj.hide();
- }else{
- beforeObj.show();
- }
- }
|