﻿String.prototype.trim=function(){
	return this.replace(/(^\s*)|(\s*$)/g, "");
}

var sSelColorCode="#EEEEEE";
var sNormalColorCode="#FFFFFF";

function RowSel(oRow,iIndex)
{
	ClearSel(oRow.parentNode);
	oRow.style.backgroundColor=sSelColorCode;
	if(SetAct("sel",iIndex))
	{
		document.forms[0].submit();
	}
}

function ClearSel(oTab)
{
	var iCount=oTab.rows.length;
	for(var i=1;i<iCount;i++)
	{
		oTab.rows[i].style.backgroundColor=sNormalColorCode;
	}
}

function SetAct(sAct,sIndex)
{
	var bRslt=true;
	var oAct=document.getElementById("TxtAct");
	var oActID=document.getElementById("TxtActID");
	if(oAct && oActID)
	{
		oAct.value=sAct;
		oActID.value=sIndex;
	}
	else
	{
		bRslt=false;
	}
	return bRslt;
}

function KeepSelStatus(sID)
{
	//修改操作类型
	var bHasDelAccess=true,bHasModAccess=true,bHasChkAccess=true;
	var iSelIndex=-1;
	var oAct=document.getElementById("TxtAct");
	if(oAct)
	{
		if(oAct.value=="sel")
		{
			iSelIndex=GetRightSelID();
			oAct.value="";
		}
		else if(oAct.value.length>0)
		{
			var aryStrs=oAct.value.split("|");
			var iCount=aryStrs.length;
			var k;
			for(k=0;k<iCount;k++)
			{ 
				switch(aryStrs[k])
				{ 
					case "NoDelAccess":
						iSelIndex=GetRightSelID();
						bHasDelAccess=false;
						break;
					case "NoModAccess":
						iSelIndex=GetRightSelID();
						bHasModAccess=false;
						break;
					case "NoChkAccess":
						iSelIndex=GetRightSelID();
						bHasChkAccess=false;
						break;
				}
			}
			//清除选中行信息避免翻页时仍旧保持选中行
			var oSelIndex=document.getElementById("TxtActID");
			if(oSelIndex) oSelIndex.value="";
		}
	}
	var oGrid=document.getElementById(sID);
	if(iSelIndex>-1 && oGrid && iSelIndex<=oGrid.rows.length-2)
	{
		oGrid.rows[iSelIndex + 1].style.backgroundColor=sSelColorCode;
		var o=document.getElementById("BtnMod");
		if(o) o.disabled=!bHasModAccess;
		var o=document.getElementById("BtnDel");
		if(o) o.disabled=!bHasDelAccess;
		var o=document.getElementById("BtnChk");
		if(o) o.disabled=!bHasChkAccess;
	}
}

//获取记录下的操作行ID的值，错误值返回-1
function GetRightSelID()
{
	var oSelIndex=document.getElementById("TxtActID");
	var oGrid=document.getElementById("GridMain");
	var iSelIndex=(oSelIndex && !isNaN(oSelIndex.value)) ? parseInt(oSelIndex.value) : -1;
	if(iSelIndex>-1 && oGrid && iSelIndex<=oGrid.rows.length-2)
	{
		return iSelIndex;
	}
	else
	{
		return -1;
	}
}

function checkSelect(checkBoxId)
{
	var oColl=document.getElementsByName(checkBoxId);
	for(var k=0;k<oColl.length;k++){
		if(oColl[k].tagName=="INPUT" && oColl[k].checked)
		{
			return true;
		}
	}
	return false;
}


function getByteLength(stringValue)
{
	var m_oRegEx=/[^\u0000-\u007F\u00A0\u00A1\u00E0-\u00f6\u00F9\u00FF]/g;
	return stringValue.replace(m_oRegEx,"aa").length;
} 

//function selectAll(sName,bChecked){
//	var oColl=document.getElementsByName(sName);
//	var k;
//	if(oColl.length>0)
//	{
//		if(bChecked==null)
//		{
//			bChecked=!oColl[0].checked;
//		}
//		for(k=0;k<oColl.length;k++){
//			if(oColl[k].tagName=="INPUT"){
//				oColl[k].checked=bChecked;
//			}
//		}
//	}
//}

//显示分页导航
function showPager(sUrl,iPage,iCount){
	var i;
	i=Math.max(1,iPage-1);
	document.write("<a href=\"" + sUrl + "1\" title='第 1 页'>首页</a> ");
	document.write("<a href=\"" + sUrl + i + "\" title='上一页(第 " + i + " 页)'>上一页</a> ");
	for(i=Math.max(1,iPage-5);i<iPage;i++){
		document.write("<a href=\""+sUrl + i + "\" title='第 " + i + " 页'><b> [ " + i + " ] </b></a> ");
	}
	document.write("<font color='#ff3333'><b> " + iPage + " </b></font> ");
	for(i=iPage+1;i<=Math.min(iCount,iPage+5);i++){
		document.write("<a href=\""+sUrl + i + "\" title='第 " + i + " 页'><b> [ " + i + " ] </b></a> ");
	}
	i=Math.min(iCount,iPage+1);
	if(iCount>iPage+5) document.write("<span style='font-size:8px'>···</span> ");
	document.write("<a href=\"" + sUrl + i + "\" title='下一页(第 " + i + " 页)'>下一页</a> ");
	document.write("<a href=\"" + sUrl + iCount + "\" title='最后一页(第 " + iCount + " 页)'>尾页</a> ");
}
//显示分页导航（伪静态）
function showHtmlPager(sUrl,iPage,iCount){
	var i;
	i=Math.max(1,iPage-1);
	document.write("<a href=\"" + sUrl + ".aspx\" title='第 1 页'>首页</a> ");
	document.write("<a href=\"" + sUrl + i + ".aspx\" title='上一页(第 " + i + " 页)'>上一页</a> ");
	for(i=Math.max(1,iPage-5);i<iPage;i++){
		document.write("<a href=\""+sUrl + i + ".aspx\" title='第 " + i + " 页'><b> " + i + " </b></a> ");
	}
	document.write("<font color='#ff3333'><b> " + iPage + " </b></font> ");
	for(i=iPage+1;i<=Math.min(iCount,iPage+5);i++){
		document.write("<a href=\""+sUrl + i + ".aspx\" title='第 " + i + " 页'><b> " + i + " </b></a> ");
	}
	i=Math.min(iCount,iPage+1);
	if(iCount>iPage+5) document.write("<span style='font-size:8px'>···</span> ");
	document.write("<a href=\"" + sUrl + i + ".aspx\" title='下一页(第 " + i + " 页)'>下一页</a> ");
	document.write("<a href=\"" + sUrl + iCount + ".aspx\" title='最后一页(第 " + iCount + " 页)'>尾页</a> ");
}
function setElementVisible(objID,visible)
{
 
	 var o=document.getElementById(objID);
	if(o!=null)
	{
		o.style.display=visible ? '' : 'none';
	}
}

function WebReadFile(sUrl,writeToObjID,eventX,eventY)
{
	var xmlObj = null;
	var writeToObj=document.getElementById(writeToObjID);
	if(writeToObj==null)
	{
		return;
	}
	if(window.XMLHttpRequest)
	{
		xmlObj = new XMLHttpRequest();
	}
	else if(window.ActiveXObject)
	{
		xmlObj = new ActiveXObject("Microsoft.XMLHTTP");
	}
	else
	{
		return;
	}
	xmlObj.onreadystatechange = function()
	{
		if(xmlObj.readyState == 4)
		{
			writeToObj.innerHTML=xmlObj.responseText;
			setElementVisible(writeToObjID ,true);
			if(eventX!=null && eventY!=null)
			{
				var x=document.body.scrollLeft + eventX;
				var y=document.body.scrollTop + eventY + 16;
				if(x + writeToObj.clientWidth > document.body.scrollWidth)
				{
					x=x-writeToObj.clientWidth;
				}
				if(y + writeToObj.clientHeight > document.body.scrollHeight)
				{
					y=y-writeToObj.clientHeight - 16;
				}
				writeToObj.style.left=x;
				writeToObj.style.top=y;
			} 
		}
	}
	xmlObj.open ('GET', sUrl, true);
	xmlObj.send ('');
}

