﻿
/*名称：HtmlEncode
  功能：html编码
  参数：s - 待编码html代码
  返回：编码后html代码
*/
function HtmlEncode(s)
{
	s = s.replace(/&/g, "&amp;");
	s = s.replace(/</g, "&lt;");
	s = s.replace(/>/g, "&gt;");
	return s.replace(/\"/g, "&quot;");
}
/*名称：encodeXml
  功能：Xml编码
  参数：s - 待编码的XML
  返回：编码后XML
*/
function encodeXml(s)
{
	s = s.replace(/&/g, "&amp;");
	s = s.replace(/</g, "&lt;");
	s = s.replace(/>/g, "&gt;");
	s = s.replace(/'/g, "&apos;");
	s = s.replace(/"/g, "&quot;");
	return s;
}
/*名称：decodeXml
  功能：Xml解码
  参数：s - 待解码的XML
  返回：解码后XML
*/
function decodeXml(s)
{
	try
	{
		s = eval('"' + s.replace(/&#x(\w\w\w\w);/g, "\\u$1").replace(/"/g, '\\"') + '"');
	}
	catch (e) {;}
	s = s.replace(/&lt;/g, "<");
	s = s.replace(/&gt;/g, ">");
	s = s.replace(/&apos;/g, "'");
	s = s.replace(/&quot;/g, "\"");
	s = s.replace(/&amp;/g, "&");
	return s;
}
/*名称：URLEncode
  功能：URL编码
  参数 : s - 待编码url
  返回：编码后url
*/
function URLEncode(s)
{
    s=encodeURI(s);
	return s.replace("+", "%2B");
}
/*名称：getStringLength
  功能：获取字符串长度
  参数：s - 字符串
  返回：字节长度
*/
function getStringLength(s)
{
	var len = 0;
	for(i=0;i<s.length;i++)
	{
		if(s.charCodeAt(i) > 255)
			len = len +2;
		else
			len = len +1;
	} 
	return len;
}
/*名称：ParseInt
功能：字符串转换为数字
参数：s - 待转换字符串
返回：转换后数字
*/
function ParseInt(s)
{
	s=s.toString();
	var re=/^[\+|-]{0,1}[0-9]+$/g;
	if(!re.test(s)) return NaN;
	re=/^([\+|-]{0,1})0+/g;
	if(re.test(s))
		s="0";
	else
		s=s.replace(re,"$1");
	return parseInt(s);
}
/*名称：CheckChineseCode
功能：检测指定对象value属性字串长度是否超出指定最大长度
参数：obj			- 要检测的对象;
       maxlength	- 最大长度;
返回：超出最大值的长度
*/
function CheckChineseCode(obj,maxlength)
{
	var len = 0;
	if(obj==null) return 0;
	var v = obj.value;
	var iOverLenght=0;
	for(i=0;i<v.length;i++)
	{
		if(v.charCodeAt(i) > 255)
			len = len +2;
		else
			len = len +1;
			
		if(len > maxlength)
		{	
			iOverLenght++;
		}
	}
	return iOverLenght;
}
/*名称：toTrim
  功能：去除字串前后空格
  参数：s - 待处理字串
  返回：处理后字串
*/
function toTrim(s)
{
	return s.replace(/^\s*|\s*$/g,"");
}
/*名称：trimEnd
  功能：去除字串最后一个指定字符  
  参数：sSource	- 源字串;
		 sRe		- 需替换字符;
  返回：处理后字串
*/
function trimEnd(sSource,sRe)
{
	var re=eval("/" + sRe + "$/");
	sSource=sSource.replace(re,"")
	return sSource;
}
/*名称：trimFirst
  功能：去除字串最后一个指定字符  
  参数：sSource	- 源字串;
		 sRe		- 需替换字符;
  返回：处理后字串
*/
function trimFirst(sSource,sRe)
{
	var re=eval("/^" + sRe + "/");
	sSource=sSource.replace(re,"")
	return sSource;
}
/*名称:IsInt
  功能:检测是否是整型
  参数:s - 待检测字条符
  返回:true/false
*/
function IsInt(s)
{
	var re=/^[\+|-]{0,1}\d+$/;
	return re.test(s);
}
//替换域名
function replaceDns(s)
{   
   // var re=/[\w]+\.[\w]+(\.[\w]+)?/;
    var re=/([\w]+\.)+([\w]+)?/;
    s=s.replace(re,"");
    s=s.replace("http://","");
    return s;
}
/*名称：GetFixedString
  功能：格式化固定长度字符
  参数：s				- 待格式化字符；
		 iPercision		- 长度
  返回：格式化后字符串
*/
function GetFixedString(s,iPercision)
{
	var sTemp="";
	for(var i=0;i<iPercision;i++)
	{
		sTemp+="0";
	}
	return sTemp;
}

/** 获取地址栏里name的值,为空返回"0"
**  name  要获取的地址栏里的变量名
**/
function GetUrlParamForDrp(name)
{
    var value=GetUrlParam(name);
    if(value!=""&&value!=undefined)
        return value;
    else
        return "0";
}

//获取地址栏查询参数或指定字符串中指定name对应的值
function GetUrlParamByQueryString( paramName,str) 
{ 
    var oregex = new RegExp( '[\?&]' + paramName + '=([^&]+)', 'i' ) ; 
    var oMatch = oregex.exec( str) ; 
    if ( oMatch && oMatch.length > 1 ) 
        return oMatch[1] ; 
    else 
        return '' ; 
} 

//获取地址栏查询参数或指定字符串中指定name对应的值
function GetUrlParam( paramName) 
{ 
    var str=document.location.search;
    var oregex = new RegExp( '[\?&]' + paramName + '=([^&]+)', 'i' ) ; 
    var oMatch = oregex.exec( str) ; 
    if ( oMatch && oMatch.length > 1 ) 
        return oMatch[1] ; 
    else 
        return '' ; 
} 
/*strValue字符串内容信息
* strLong最大长度要求
* errorMessage错误提示信息
*/
function stringLengthIsTooLong(strValue,strLong,errorMessage)
{
     var ret=getStringLength(strValue)<=strLong;
     if(!ret)
     alert(errorMessage+"内容超长");
     return ret;
}
