/** 
* power by njm  Nvo. 30 2009 
* JQuery 数据验证
* 
*/ 
(function($) { 
var wshc = $.fn.check = function(){ 
return wshc.fn.init(this); 
} 
DATETIME = { 
FULL: "full", 
SIMPLE: "simple"
} 
wshc.fn = { 
init: function(obj){ 
wshc.fn.val = obj.val(); 
wshc.fn.obj = obj;
return wshc.fn; 
}, 
notNull: function(){ //检查是否为空
if(($.trim(this.val).length > 0||$.trim(this.val)!='')&&$.trim(this.val)!='null'){ 
return true; 
} 
return false; 
},
radioChecked: function(){ //检查radio是否为空
if(this.val != undefined){ 
return true; 
}  
return false; 
},
isEqual: function(val){ //检查两次输入是否相同
if(this.val ==val){ 
return true; 
}  
return false; 
},
isPrice:function(){//检查是否是价格小数,整数(包括以’-‘分隔的)
	var pat = /^(?:\d+|\d{1,3}(?:,\d{3})+)(?:\.\d+)?(-(?:\d+|\d{1,3}(?:,\d{3})+)(?:\.\d+)?)?$/;
	return mat(this.val,pat); 
},
isPdf:function(){//检查是否是pdf 格式
	var pat = /^pdf$/;
	if(this.val.split('.')[1] == undefined){return false;}
	return mat(this.val.split('.')[1],pat); 
},
isInt:function(){//检查是否是整数
	var pat = /^[0-9]*[1-9][0-9]*$/;
	return mat(this.val,pat); 
},
isNum:function(){//检查是否是数字（小数，负数，整数）
	var pat = /^-?(?:\d+|\d{1,3}(?:,\d{3})+)(?:\.\d+)?$/;
	return mat(this.val,pat); 
},
isNumPara:function(val){//检查val是否是数字（小数，负数，整数）
	var pat = /^-?(?:\d+|\d{1,3}(?:,\d{3})+)(?:\.\d+)?$/;
	return mat(val,pat); 
},
isCn:function(){//检查是否包含中文字符
	var pat =/^\w*[^\x00-\xff]\w*$/;
	return pat.test(this.val);  
},  
isPone:function(){//检查是否是数字（整数）(包括以’/‘分隔的)
	var pat = /^((13[0-9]|15[0-9]|18[0-9])\d{8})+([\/](13[0-9]|15[0-9]|18[0-9])\d{8})*$/;
	return mat(this.val,pat); 
}, 
isSMSPone:function(){//检查是否是数字（整数）(包括以’,‘分隔的)
	var pat = /^\d+([\/,]\d+)*$/;
	return mat(this.val,pat); 
}, 
datatime: function(){ 
return DATETIME; 
}, 
email: function(pat){//检查是否符合电子邮件格式 
pat = pat || /^[a-zA-Z0-9_\-\.]+@[a-zA-Z0-9_\-\.]+\.[a-zA-Z]{0,4}$/; 
return mat(this.val,pat); 
}, 
isEmail: function(pat){//检查是否符合电子邮件格式 (包括以’,‘分隔的)
pat = pat || /^([a-zA-Z0-9_\-\.]+@[a-zA-Z0-9_\-\.]+\.[a-zA-Z]{0,4})+([\/,]([a-zA-Z0-9_\-\.]+@[a-zA-Z0-9_\-\.]+\.[a-zA-Z]{0,4}))*$/; 
return mat(this.val,pat); 
}, 
date: function(type){ //日期
var pat; 
switch(type){ 
case DATETIME.SIMPLE: 
pat = /^\d{4}[\/-]\d{2}[\/-]\d{2}$/; 
break; 
case DATETIME.FULL: 
pat = /^\d{4}[\/-]\d{2}[\/-]\d{2} \d{2}[\/:]\d{2}[\/:]\d{2}$/; 
break; 
}
return mat(this.val,pat); 
}
} 

var mat = function(val,pat){ 
if (val.match(pat)) { 
return true; 
} 
return false; 
} 
var error = function(err){ 
wshc.fn.error = err; 
} 
})(jQuery);

function notNullVal(val){ //检查是否为空
			if($.trim(val).length > 0||$.trim(val)!=''){ 
			return true; 
				}
			return false;
			}
function emailVal(val){//检查是否符合电子邮件格式 
	pat = /^[a-zA-Z0-9_\-\.]+@[a-zA-Z0-9_\-\.]+\.[a-zA-Z]{0,4}$/; 
	if (val.match(pat)) { 
		return true; 
		} 
		return false; 
}

function isDate(datestr){
	var tmpy="";
	var tmpm="";
	var tmpd="";
	var status=0;
	var lthdatestr= datestr.length;
	
	for (i=0;i<lthdatestr;i++){
		if (datestr.charAt(i)== '-'){
			status++;
		}
		if (status>2) return false;
		if ((status==0) && (datestr.charAt(i)!='-')){
			tmpy=tmpy+datestr.charAt(i)
		}
		if ((status==1) && (datestr.charAt(i)!='-')){
			tmpm=tmpm+datestr.charAt(i)
		}
		if ((status==2) && (datestr.charAt(i)!='-')){
			tmpd=tmpd+datestr.charAt(i)
		}
	}
	if ((tmpy.length!=4)||(tmpm.length>2)||(tmpd.length>2)) return false;

	year=new String (tmpy);
	month=new String (tmpm);
	day=new String (tmpd)

	if (!((month>0)&&(month<13)&&(day<32)&&(day>0))) return false;
	if (!((year % 4)==0) && (month==2)&&(day==29)) return false;
	if ((month<=7)&&((month % 2)==0)&&(day>30)) return false;
	if ((month>=8)&&((month % 2)==1)&&(day>30)) return false;
	if ((month==2)&&(day>29)) return false;

	return true;
}
