function thisFocus(o_obj,s_className,s_color,b_notSel)
{//当前活动对象得到焦点或鼠标在其上时调用此函数(相反操作为thisBlur函数)
try
	{
	if(o_obj==null)
		return false;

	if(s_className!=null&&s_className!="")
		o_obj.className=s_className;
	else if(s_color!=null&&s_color!="")
		o_obj.style.background=s_color;
	else if(o_obj.className!=null&&o_obj.className!="")
		{
			var clsname=o_obj.className;
			if(clsname.substring(clsname.length-1)!="1")
				o_obj.className=clsname+"1";
		}
	else
		o_obj.style.background="#E3FEE0";

	//对象有select方法并且要求选中文本(notSel只要有值则不选中)
	//if(o_obj.select!=null&&!b_notSel)
	//	o_obj.select();		//暂取消选中

	}
	catch(error)
	{}
}

function thisBlur(o_obj,s_className,s_color)
{//当前活动对象失去焦点或鼠标离开时调用此函数(对应thisFocus,与其作用相反)
try
	{
	if(o_obj==null)
		return false;

	if(s_className!=null&&s_className!="")
		o_obj.className=s_className;
	else if(s_color!=null&&s_color!="")
		o_obj.style.background=s_color;
	else if(o_obj.className!=null&&o_obj.className!="")
		{
			var clsname=o_obj.className;
			if(clsname.substring(clsname.length-1)=="1")
				o_obj.className=clsname.substring(0,clsname.length-1);
		}
	else
		o_obj.style.background="ffffff";
	}
	catch(error)
	{}
}

function strim(strObj)
{//去前后空格
	if(strObj==null||strObj=="")
		return "";
	var s_str=""+strObj;

	while (s_str.substring (0, 1) == ' ') 
		s_str = s_str.substring (1, s_str.length);
	while (s_str.substring (s_str.length - 1, s_str.length) == ' ')
		s_str = s_str.substring (0, s_str.length - 1);
	return s_str;
} 

//窗口居中
function winToCenter(o_win,W,H)
{
	if(o_win==null)	return;
			
	var win_w=W;
	var win_h=H;

	if(document.all)
		win_w=win_w+2;	win_h=win_h+20+3;	//isie=true

	o_win.moveTo(Math.ceil((window.screen.width-win_w)/ 2),Math.ceil((window.screen.height-win_h-30)/ 2));
}

function chineseCount(str)
{//返回字符串中文字符的个数
	var c=0;
	for(var i=0;i<str.length;i++)
		if(str.charCodeAt(i)>=10000)
			c++;
	return c;
}

function isChinese(str)
{//单个字符是中文则返回true，若是字符串则只要有一个中文则返回true
	var flag=true;
	for(var i=0;i<str.length;i++)
		if(str.charCodeAt(i)>=10000)
			return true;
	return false;
}

function getByteCount(str)
{//返回字符串的字节数，中文算两个字节 注:由于UTF-8中文占3个字节,所以这里已经改为3
	var c=0;
	for(var i=0;i<str.length;i++)
		if(str.charCodeAt(i)>=10000)
			c+=3;
		else
			c++;
	return c;
}

//返回相对于total字符数的str还需补的空格（数）
function getSpace(total,str)
{
	if(str==null) return "";

	var num=total-getByteCount(str);
	if(num<=0)	return "";

	var space="";
	for(var i=0;i<num;i++)
		space+=" ";
		
	return space;
}

function subToEnd(ss,rr)
{//返回字符串，ss中从第一个rr后的部分
	var subs="";
	var pos=ss.indexOf(rr);
	if(pos!=-1)
		subs=ss.substring(pos+1);
	return subs;
}

function validateDay(pyear,pmonth,pday)
{//返回是此月是否有pday这一天，若没有则返回错误信息，有则返回""
	try
	{
		if (pyear==""||pmonth==""||pday=="")
			return JSMESSAGE['script.common.validateDay.remind1'];
		
		if (!((1<=pmonth)&&(12>=pmonth)&&(31>=pday)&&(1<=pday)))
			return JSMESSAGE['cript.generic.date.wrong'] ;
		if (pmonth==2)
		{
			if (!(pyear%4==0)&&pday>28)
				return pyear+JSMESSAGE['script.common.validateDay.remind2']+pmonth+JSMESSAGE['script.common.validateDay.remind3']+pday+JSMESSAGE['script.common.validateDay.remind4'];
			else if (pyear%4==0&&pday>29)
				return pyear+JSMESSAGE['script.common.validateDay.remind2']+pmonth+JSMESSAGE['script.common.validateDay.remind3']+pday+JSMESSAGE['script.common.validateDay.remind4'];
		}
		if(pday>30&&(pmonth<=7&&pmonth%2==0||pmonth>=8&&pmonth%2==1))
			return pyear+JSMESSAGE['script.common.validateDay.remind2']+pmonth+JSMESSAGE['script.common.validateDay.remind3']+pday+JSMESSAGE['script.common.validateDay.remind4'];
		return "";
	}
	catch(error)
	{	
		return JSMESSAGE['script.common.validateDay.remind5'];
	}
}

//--导出到Excel文件----
function exportToExcel(filename,filepath)
{
	try
	{	var a="";
		var b="";
		if(filename!=null&&filename!="")
			a=filename;
		if(filepath!=null&&filepath!="")
			b=filepath;
		var result=vbsExportToExcel(a,b);
	}
	catch(error)
	{
		if(error.description.indexOf("EexportRecordTable")!=-1)
			alert(JSMESSAGE['script.common.exportToExcel.remind1']);
		else
			functionError(error,JSMESSAGE['script.common.exportToExcel.remind2']);
	}

}
//--执行其他框架页中的函数--
function execOtherFrameJS(funcName,fObj)
{
	try
	{
		if(funcName==null)
			return false;
		var frameObj=parent.mContentFrame;
		if(fObj!=null&&fObj.location!=null)
			frameObj=fObj;

		var exeStr="if(frameObj."+funcName+"!=null)";
		exeStr+="frameObj."+funcName+"();";
		exeStr+="else{alert(JSMESSAGE['script.common.execOtherFrameJS.remind1']);}";
		eval(exeStr);
	}
	catch(error)
	{
		functionError(error,JSMESSAGE['script.common.execOtherFrameJS.remind2']);
		return false;
	}
}
//--全部复选框全部选中与全不选中函数----
function selectCheckboxAll(s_count,s_prefix)
{
	try
	{
		var cnt=parseInt(s_count)
		for(var i=1;i<=cnt;i++)
			if(document.all(s_prefix+i)&&!document.all(s_prefix+i).disabled)
				document.all(s_prefix+i).checked=true;
	}
	catch(error)
	{
		functionError(error,JSMESSAGE['script.common.selectCheckboxAll.remind1']);
	}
}
function unselectCheckboxAll(s_count,s_prefix)
{
	try
	{
		var cnt=parseInt(s_count)
		for(var i=1;i<=cnt;i++)
			if(document.all(s_prefix+i)&&!document.all(s_prefix+i).disabled)
				document.all(s_prefix+i).checked=false;
	}
	catch(error)
	{
		functionError(error,JSMESSAGE['script.common.unselectCheckboxAll.remind1']);
	}
}

//********************错误处理函数******************
function functionError(errObj,mess)
{//执行函数时出错处理函数mess为传来的消息，有则替换默认消息
try
	{
		var ms=JSMESSAGE['script.common.functionError.remind1'];
		if(mess!=null&&mess!="")
			ms=mess;
		if(errObj!=null)
		{
			ms+=JSMESSAGE['script.generic.descr']+errObj.description;
			alert(ms);
		}		
	}
	catch(error)
	{
		alert(JSMESSAGE['script.common.functionError.remind2']);
	}
}

function formCheckError(errObj,mess)
{//表单验证出现Error时通用提示,mess为传来的消息，有则替换默认消息
try
	{

		var ms=JSMESSAGE['script.common.formCheckError.remind1'];
		if(mess!=null&&mess!="")
			ms=mess;	
		if(errObj!=null)
		{
			ms+=JSMESSAGE['script.generic.descr']+errObj.description;
			alert(ms);
		}
		return false;
	}
	catch(error)
	{
		alert(JSMESSAGE['script.common.formCheckError.remind2']);
		return false;
	}
}

function redirect(url,frameObj)
{//重定向函数，可指定框架对象，缺省frameObj则将前面重定向，url为空则转到空白页
try
	{
		if(url==null||url=="")
			url="about:blank";
		if(frameObj==null)
			document.location.href=url;
		else
		{
			if(frameObj.location!=null)
				frameObj.location.href=url;
		}
	}
	catch(error)
	{
		functionError(error,JSMESSAGE['script.common.redirect.remind1']);
	}
}

function doNotWait()
{
	try
	{
		if(WaitPage!=null)
			WaitPage.style.visibility="hidden";
	}
	catch(error)
	{
		if(WaitPage!=null)
			WaitPage.style.visibility="hidden";
		functionError(error,JSMESSAGE['script.common.doNotWait.remind1']);
	}
}

//清空Select列表（保留第一个option值,如值为空的“--请选择--”项）
function selectBoxClear(boxObj)
{
	try
	{
		if(boxObj==null) return;
		for(var i=boxObj.options.length-1;i>0;i--)
			boxObj.options.remove(i);
	}
	catch(error)
	{}
}

//向Select列表对象中添加新option项
function selectBoxAdd(boxObj,optVal,optText)
{ 
	try
	{
		if(boxObj==null) return;
		boxObj.options.add(new Option(optText,optVal));
	}
	catch(error)
	{}
}

//选中Select列表对象中值为optVal的项
function selectBoxChoose(boxObj,optVal)
{ 
	try
	{
		if(boxObj==null) return;
		for(var i=boxObj.options.length-1;i>=0;i--)
			if(boxObj.options[i].value==optVal)
			{
				boxObj.options[i].selected=true;
				return;
			}
	}
	catch(error)
	{}
}

//********默认事件处理*********
//document.oncontextmenu=new Function("return false;");
//document.onselectstart=new Function("return false;");
//document.ondragstart=new Function("return false;");
document.onkeydown=new Function("if(event.keyCode==78&&event.ctrlKey) return false;");