jQuery.validator.addMethod("isEqualOrGreaterThan", function(value, element,
				param) {
			$("label[for='" + param.replace("#", "") + "']").html("");
			if (parseInt(value) >= parseInt($(param).val())) {
				return true;
			} else {
				return false;
			}
		}, jQuery.validator.format("必须大于等于起始 大小"));
jQuery.validator.addMethod("isEqualOrLesserThan", function(value, element,
				param) {
			$("label[for='" + param.replace("#", "") + "']").html("");
			if (parseInt(value) <= parseInt($(param).val())) {
				return true;
			} else {
				return false;
			}
		}, jQuery.validator.format("必须小于等于最大大小"));

jQuery.validator.addMethod("integer", function(value, element) {
			return this.optional(element) || /^-?\d+$/.test(value);
		}, jQuery.validator.format("必须为整数"));

// 不建议使用,建议使用accept
jQuery.validator.addMethod("imgOrFlash", function(value, element, param) {
			var format = value.substring(value.lastIndexOf(".") + 1,
					value.length).toLowerCase();
			if (format != "gif" && format != "jpg" && format != "jpeg"
					&& format != "swf") {
				return false;
			}
			return true;
		}, "");
jQuery.validator.addMethod("isMoneyYuan", function(value) {
			var reg = new RegExp("^[0-9]+(.[0-9]{1,2})?$", "g");
			if (!reg.test($.trim(value))) {
				return false;
			}
			return true;
		}, "最多只能有两位小数!");
jQuery.validator.addMethod("checkTimeStartFromTomorrow", function(value,
				element, param) {
			var today = new Date();
			var todayStr = today.getFullYear() + "-";
			if (today.getMonth() + 1 < 10) {
				todayStr = todayStr + "0" + (today.getMonth() + 1);
			} else {
				todayStr = todayStr + (today.getMonth() + 1);
			}
			if (today.getDate() < 10) {
				todayStr = todayStr + "-0" + (today.getDate());
			} else {
				todayStr = todayStr + "-" + (today.getDate());
			}
			if (todayStr > value) {
				return false;
			}
			return true;
		}, "");
jQuery.validator.addMethod("checkFilterUrl", function(value, element, param) {
			var filterUrls = $.trim(value);
			var filterUrlArray = new Array();
			if ($.browser.msie)
				filterUrlArray = filterUrls.split("\r\n");
			if ($.browser.mozilla)
				filterUrlArray = filterUrls.split("\n");
			if (filterUrls.length > 0) {
				if (filterUrlArray.length > 100) {
					return false;
				}
				for (var i = 0; i < filterUrlArray.length; i++) {
					return checkDomain($.trim(filterUrlArray[i]));
				}
			}
			return true;
		}, "");
jQuery.validator.addMethod("checkGBKStringLength", function(value, element,
				param) {
			var i, sum;
			sum = 0;
			for (i = 0; i < value.length; i++) {
				if ((value.charCodeAt(i) >= 0) && (value.charCodeAt(i) <= 255))
					sum = sum + 1;
				else
					sum = sum + 2;
			}
			if (sum <= param) {
				return true;
			} else {
				return false;
			}
			return true;
		}, jQuery.validator.format("最大不超过 {0}个字符"));
jQuery.validator.addMethod("checkUTF8StringLength", function(value, element,
				param) {
			var i, sum;
			sum = 0;
			for (i = 0; i < value.length; i++) {
				if ((value.charCodeAt(i) >= 0) && (value.charCodeAt(i) <= 255))
					sum = sum + 1;
				else
					sum = sum + 3;
			}
			if (sum <= param) {
				return true;
			} else {
				return false;
			}
			return true;
		}, jQuery.validator.format("最大不超过 {0}个字符"));

jQuery.validator.addMethod("checkUTF8StringMinLength", function(value, element,
				param) {
			var i, sum;
			sum = 0;
			for (i = 0; i < value.length; i++) {
				if ((value.charCodeAt(i) >= 0) && (value.charCodeAt(i) <= 255))
					sum = sum + 1;
				else
					sum = sum + 3;
			}
			if (sum >= param) {
				return true;
			} else {
				return false;
			}
			return sum;
		}, jQuery.validator.format("最小不少于 {0}个字符"));

function checkDomain(nname) {
	var arr = new Array('.com', '.net', '.org', '.biz', '.coop', '.info',
			'.museum', '.name', '.pro', '.edu', '.gov', '.int', '.mil', '.ac',
			'.ad', '.ae', '.af', '.ag', '.ai', '.al', '.am', '.an', '.ao',
			'.aq', '.ar', '.as', '.at', '.au', '.aw', '.az', '.ba', '.bb',
			'.bd', '.be', '.bf', '.bg', '.bh', '.bi', '.bj', '.bm', '.bn',
			'.bo', '.br', '.bs', '.bt', '.bv', '.bw', '.by', '.bz', '.ca',
			'.cc', '.cd', '.cf', '.cg', '.ch', '.ci', '.ck', '.cl', '.cm',
			'.cn', '.co', '.cr', '.cu', '.cv', '.cx', '.cy', '.cz', '.de',
			'.dj', '.dk', '.dm', '.do', '.dz', '.ec', '.ee', '.eg', '.eh',
			'.er', '.es', '.et', '.fi', '.fj', '.fk', '.fm', '.fo', '.fr',
			'.ga', '.gd', '.ge', '.gf', '.gg', '.gh', '.gi', '.gl', '.gm',
			'.gn', '.gp', '.gq', '.gr', '.gs', '.gt', '.gu', '.gv', '.gy',
			'.hk', '.hm', '.hn', '.hr', '.ht', '.hu', '.id', '.ie', '.il',
			'.im', '.in', '.io', '.iq', '.ir', '.is', '.it', '.je', '.jm',
			'.jo', '.jp', '.ke', '.kg', '.kh', '.ki', '.km', '.kn', '.kp',
			'.kr', '.kw', '.ky', '.kz', '.la', '.lb', '.lc', '.li', '.lk',
			'.lr', '.ls', '.lt', '.lu', '.lv', '.ly', '.ma', '.mc', '.md',
			'.mg', '.mh', '.mk', '.ml', '.mm', '.mn', '.mo', '.mp', '.mq',
			'.mr', '.ms', '.mt', '.mu', '.mv', '.mw', '.mx', '.my', '.mz',
			'.na', '.nc', '.ne', '.nf', '.ng', '.ni', '.nl', '.no', '.np',
			'.nr', '.nu', '.nz', '.om', '.pa', '.pe', '.pf', '.pg', '.ph',
			'.pk', '.pl', '.pm', '.pn', '.pr', '.ps', '.pt', '.pw', '.py',
			'.qa', '.re', '.ro', '.rw', '.ru', '.sa', '.sb', '.sc', '.sd',
			'.se', '.sg', '.sh', '.si', '.sj', '.sk', '.sl', '.sm', '.sn',
			'.so', '.sr', '.st', '.sv', '.sy', '.sz', '.tc', '.td', '.tf',
			'.tg', '.th', '.tj', '.tk', '.tm', '.tn', '.to', '.tp', '.tr',
			'.tt', '.tv', '.tw', '.tz', '.ua', '.ug', '.uk', '.um', '.us',
			'.uy', '.uz', '.va', '.vc', '.ve', '.vg', '.vi', '.vn', '.vu',
			'.ws', '.wf', '.ye', '.yt', '.yu', '.za', '.zm', '.zw');

	var mai = nname;
	var val = true;

	var dot = mai.lastIndexOf(".");
	var dname = mai.substring(0, dot);
	var ext = mai.substring(dot, mai.length);

	if (dot > 2 && dot < 57) {
		for (var i = 0; i < arr.length; i++) {
			if (ext == arr[i]) {
				val = true;
				break;
			} else {
				val = false;
			}
		}
		if (val == false) {
			return false;
		} else {
			for (var j = 0; j < dname.length; j++) {
				var dh = dname.charAt(j);
				var hh = dh.charCodeAt(0);
				if ((hh > 47 && hh < 59) || (hh > 64 && hh < 91)
						|| (hh > 96 && hh < 123) || hh == 45 || hh == 46) {
					if ((j == 0 || j == dname.length - 1) && hh == 45) {
						return false;
					}
				} else {
					return false;
				}
			}
		}
	} else {
		return false;
	}

	return true;
}

