/*字符串去空格*/
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