/***************************************************************************************
 * @Title        : 公共javascript函数集
 * @Description  : hxjob.com JavaScript Document
 * @Author       : yigan
 * @version      : 2.0
 * @Copyright    : (c)2004-2007 hxjob.com All Rights Reserved
 ***************************************************************************************/
 // 一般页面的常规变量定义
var All  = document.all;
var echo = document.write;
/** 测量有汉字时的字串实际长度，其中一个汉字占两个字符 Base 20061120 */
function len(s){
	var length = 0;
	var tmpArr = s.split("");

	for (i = 0; i < tmpArr.length; i++){
		if (tmpArr[i].charCodeAt(0) < 299)
			length ++;
		else
			length += 2;
	}
	return length;
}

/** 检查电话号码输入是否合法 */
function isPhone(s) {
	var regu = "^(([(0-9)]+)|([0-9-]+))(([0-9-]+)|([0-9]+))([0-9])$";
	var re   = new RegExp(regu);
	if (s.search(re) != -1)
		return true;
	else
		return false;
}
/** 是否为合法字串，指只包括字母，数字和_的字串　*/
function isStr(s) {
	if (s.length == 0) return false;
	var regu = "^[0-9A-Za-z_]*$";
	var re   = new RegExp(regu);
    //alert("ssss---s.search(re):"+s.search(re));
    s = s.replace('@', '');
    s = s.replace('.', '');
	if (s.search(re) != -1)
		return true;
	else
    {
        if (isEmail(s)) return true;
		else return false;
    }
}
/** 检测Email是否合法 */

function isEmail(s) {
	if (s.length > 100)	return false;
	if (s.indexOf("'")!=-1 || s.indexOf("/")!=-1 || s.indexOf("\\")!=-1 || s.indexOf("<")!=-1 || s.indexOf(">")!=-1) return false;
    s = s.replace('(', '');
    s = s.replace(')', '');
    s = s.replace('（', '');
    s = s.replace('）', '');

	var regu = "^(([0-9a-zA-Z]+)|([0-9a-zA-Z]+[_.0-9a-zA-Z-]*[_.0-9a-zA-Z]+))@([a-zA-Z0-9-]+[.])+(.+)$";
	var re = new RegExp(regu);
	if (s.search(re) != -1)
		return true;
	else
		return false;
}
/**按字节长度控制的函数。主要用于文本框中onKeyUp()事件 */
function js_setMaxLen(currObj,iNum)
{   //alert(currObj);
    if (js_byte_length(currObj.value) > iNum)
    {
        currObj.value = js_cutstr(currObj.value,iNum);
        currObj.focus();
        alert('输入超长/或是使用全角字符!');
    }
}

/**取字串的字符个数(包括汉字)*/
function js_byte_length( _sz )
{
    if( _sz.length <= 0 ) return 0 ;
    //byteLeng统计byte的长度
    byteLeng = _sz.length;
    for( i =0 ; i < _sz.length  ; i++ ){
        //对每个字符进行转义编码：规则：只对不可见字符、空格、非ASCII码进行转码。
        //转码结果为 unicode码。如：“你”，转为：%u4F60
        szTmp = escape(_sz.charAt(i),'UTF-8');
        //alert("escape is:"+szTmp);
        if(szTmp.length>=6){
            //如果为双字节的字符，则再加1。
            byteLeng ++;
        }
    }
    return byteLeng;
}

/** 截取指定字节长度的字符串 */
function js_cutstr(szValue,iLen)
{
    //取出允许的长度写回
    var szObjValue = "";
    var iCount = 0;
    for(i = 0; i < szValue.length; i++){
        var szTmpUn = escape(szValue.charAt(i));
        if (szTmpUn.length >= 6){
           iCount = iCount + 2;
        }
        else {
            iCount = iCount + 1;
        }
        if (iCount > iLen){break;}
        szObjValue = szObjValue + szValue.charAt(i);
    }
    return szObjValue;
}

/*检测无效字符*/
function js_hasBadChar(szOriginal)
{
    var szExp = "'\\/?\"<>|";
    if( szOriginal.length <=0 || szExp.length <=0 ) {
        return false;
    }
    for( var counter = 0 ; counter < szExp.length ; counter ++ ){
        curr_char = szExp.charAt(counter);
        if( szOriginal.indexOf( curr_char) >= 0 ){
            return true ;
        }
    }
    return false;
}

/**去掉前后空格:包括全角空格*/
function js_trim(str)
{   
    str += "";
    while( (str.charAt(0)==' ')||(str.charAt(0)=='　')||(escape(str.charAt(0))=='%u3000') )     
         str=str.substring(1,str.length);
    while( (str.charAt(str.length-1)==' ')||(str.charAt(str.length-1)=='　')||(escape(str.charAt(str.length-1))=='%u3000') )  
        str=str.substring(0,str.length-1);
    return str;
}

/** 仅限输入数字，不含小数点*/
function IsDigit()
{
  return (((event.keyCode >= 48) && (event.keyCode <= 57)));
}

/** 仅限输入数字，含小数点*/
function IsDigitZero()
{
  return (((event.keyCode >= 48) && (event.keyCode <= 57)) || (event.keyCode==46));
}
function J_BI(T_obj){
	return document.getElementById(T_obj);
}