//var exprMobile = "^(13[0-9]{9})?$"; // 手机号码的正则表达式
var exprMobile = "^1[3,5]{1}[0-9]{1}[0-9]{8}$"
var exprEmail = "^([\\-_\\.a-zA-Z0-9]+@([\\-_a-zA-Z0-9]+\\.)+[a-zA-Z0-9]{2,3})?$"; // 电子邮箱的正则表达式
var exprDate = "^(\\d{4}-\\d{1,2}-\\d{1,2})?$"; // 日期的正则表达式(年-月-日)

// 校验文本框是否录入了内容，内容为空就返回false
function RequiredValid(intputTarget, errorMsg)
{
	if (Trim(intputTarget.value) == "") {
		intputTarget.focus();
		alert(errorMsg);
		return false;
	} else
		return true;
}
// 校验下拉框是否选择了内容，选择为空就返回true
function RequiredValid_sel(selectTarget, errorMsg)
{
	if (selectTarget.options[selectTarget.selectedIndex].value == '') {
		selectTarget.focus();
		alert(errorMsg);
		return false;
	} else
		return true;
}
// 校验下拉框是否选择了内容，选择为空就返回true(以后此方法应删除，因为命名错了)
function RegularValid_sel(selectTarget, errorMsg)
{
	return RequiredValid_sel(selectTarget, errorMsg);
}
// 校验输入内容的有效性，有效就返回true，否则返回false
/* expr : 用于有效性校验的正则表达式
*/
function RegularValid(intputTarget, expr, errorMsg)
{
	var checkstr = intputTarget.value;
	eval("var re = /" + expr + "/;");
	if (re.test(checkstr))
		return true;
	else {
		intputTarget.focus();
		alert(errorMsg);
		return false;
	}
}
// 比较两个控件值是否相同，如果相同就返回true，否则返回false
/* intputTarget1 : 被比较的控件
   intputTarget2 : 用于比较的控件
*/
function CompareValid(intputTarget1, intputTarget2, errorMsg)
{
	if (intputTarget1.value == intputTarget2.value)
		return true;
	else {
		intputTarget2.focus();
		alert(errorMsg);
		return false;
	}
}
// 为数字录入控件添加一系列事件，使用户只能录入与数字相关的字符 **BEGIN**
/* 控件可用的自定义属性：
   isReal : 是否可录入小数，值为true或不加此属性表可录入小数，为false表不可录入小数
   isNeg  : 是否可录入负数，值为true或不加此属性表可录入负数，为false表不可录入负数
   digit  : 可录入的小数位数，不加此属性时默认为可录入2位小数
*/
function Numeric_addCheckEvent(id) {
	id.onkeypress = Numeric_AddNumericItem;
	id.onpaste = Numeric_Paste;
	id.style.imeMode = "disabled";
}
// 为数字录入控件添加有关校验功能的事件(以后此方法应删除)
function Numeric_addEvent(id) {
	document.getElementById(id).onkeypress = Numeric_AddNumericItem;
	document.getElementById(id).onpaste = Numeric_Paste;
	document.getElementById(id).style.imeMode = "disabled";
}

function Numeric_AddNumericItem(e) {
	if(document.selection.createRange().text != '')
		document.selection.clear();
	var keyCode = event.keyCode;

	if ((keyCode >= 48 && keyCode <= 57) || keyCode == 13 || keyCode == 8) {
		if(event.srcElement.isReal == 'false' || keyCode == 13 || keyCode == 8)
			return true;
		else {
			var tempVal = event.srcElement.value;
			var dotIndex = tempVal.indexOf(".", 0);
			if(dotIndex != -1) {
				var digit = 2;
				if (event.srcElement.digit != null)
					digit = event.srcElement.digit;
				var curDigit = tempVal.length - dotIndex - 1;
				if (curDigit >= digit)
					return false;
			}
		}
	}
	else if(keyCode == 45 || keyCode == 46) {
		if(keyCode == 45) {
			var tempVal = event.srcElement.value + "-";
			if(tempVal.indexOf("-") == 0 && tempVal.indexOf("-", 1) == -1) {
				if(event.srcElement.isNeg == 'true' || event.srcElement.isNeg == null)
					return true;
				else
					return false;
			} else
				return false;
		} else if (keyCode == 46) {
			var tempVal = event.srcElement.value;
			if(tempVal.indexOf(".", 0) == -1) {
				if (event.srcElement.isReal == 'true' || event.srcElement.isReal == null)
					return true;
				else
					return false;
			} else
				return false;
		} else
			return false;
	} else
		return false;
}

function Numeric_Paste(e) {
	var pasteData = window.clipboardData.getData("Text");
	var expr = /^[-]?\d+(\.\d+)?$/;
	if (event.srcElement.isReal == "false") {
		if (event.srcElement.isNeg == "false")
			expr = /^\d+(\d+)?$/;
		else
			expr = /^[-]?\d+(\d+)?$/;
	} else {
		if (event.srcElement.isNeg == "false")
			expr = /^\d+(\.\d+)?$/;
		else
			expr = /^[-]?\d+(\.\d+)?$/;
	}
	if (expr.test(pasteData) || pasteData.length == 0) {
		var dotIndex = pasteData.indexOf(".", 0);
		if(dotIndex != -1) {
			var digit = 2;
			if (event.srcElement.digit != null)
				digit = event.srcElement.digit;
			var curDigit = pasteData.length - dotIndex - 1;
			if (curDigit > digit) {
				alert("被粘贴的内容不符合此项的格式！");
				return false;
			}
		}
		event.srcElement.value = pasteData;
		return false;
	} else {
		alert("被粘贴的内容不符合此项的格式！");
		return false;
	}
}
// 为数字录入控件添加一系列事件，使用户只能录入与数字相关的字符 **END**