/*
文件作用：公用JS文件
版本号：1.0
版权所有：贵州乐迅网络技术有限公司
功能概述：操作页面控件、表格控制、手机号邮箱合法性验证等
*/

/********** 【部分一 检测、转换部分】 **********/
/****************************************************
【函数作用】：检测手机号码是否合法
【参数】：
		TellNum：需要检测的手机号 
【返回值】：合法true，不合法false
****************************************************/
function CheckTell(TellNum)
{
	if(/^13\d{9}$/g.test(TellNum)||(/^14[7]\d{8}$/g.test(TellNum))||(/^15[0,1,2,6,8,9]\d{8}$/g.test(TellNum))||(/^18[6,7,8,9]\d{8}$/g.test(TellNum)))
	{
		return true;
	}
	return false;
}

/****************************************************
【函数作用】：将某字符串转换为整型数字
【参数】：
		Value：需要转换或过滤的串 
【返回值】：转换结果
****************************************************/
function InputToInt(Value)
{
	return Value.replace(/\D/gi,"");
}

/****************************************************
【函数作用】：将某字符串转换为浮点型数字
【参数】：
		Value：需要转换或过滤的串 
【返回值】：转换结果
****************************************************/
function InputToFloat(Value)
{
	return Value.replace(/[^0-9\-\.]/,"");
}

/********** 【部分二 页面控件控制】 **********/
/****************************************************
【函数作用】：根据值选中多选框
【参数】：
		ObjName:input控件名
		Value:以'|'隔开的值串
		Disabled:1 或 0,是否禁用控件
【返回值】：无
****************************************************/
function CheckCheckBoxByValue(ObjName,Value,Disabled)
{
	Value='|'+Value+'|';
	var Obj=document.getElementsByName(ObjName);
	for(var i=0;i<Obj.length;i++)
	{
		if(Value.indexOf("|"+Obj[i].value+"|")!=-1)
			Obj[i].checked=true;
		else
			Obj[i].checked=false;
		if(Disabled==1)
			Obj[i].disabled=true;
		else
			Obj[i].disabled=false;
	}
}

/****************************************************
【函数作用】：获取单选按钮Radio的值
【参数】：
		ObjName:Radio控件名
【返回值】：被选中的Radio项值
****************************************************/
function GetRadioValue(ObjName)
{
	Value='';
	var Obj=document.getElementsByName(ObjName);
	for(var i=0;i<Obj.length;i++)
	{
		if(Obj[i].checked==true)
		{
			Value=Obj[i].value;
			break;
		}
	}
	return Value;
}

/****************************************************
【函数作用】：清空Select下拉菜单选项
【参数】：
		SelectID:Select控件ID名
****************************************************/
function ClearOption(SelectID)
{
	$$(SelectID).options.length = 0;
}

/****************************************************
【函数作用】：重置Select选项
【参数】：
		SelectID:Select控件ID名
****************************************************/
function InitSelect(SelectID)
{
	var Obj=$$(SelectID);
	if(Obj.options.length!=0)
	{
		var TempValue=Obj.options[0].value;
		var TempText=Obj.options[0].text;
		ClearOption(SelectID);
		AddOption(SelectID,TempValue,TempText);
	}
}

/****************************************************
【函数作用】：添加Select选项
【参数】：
		SelectID:Select控件ID名
		Value：列表项值
		Text：列表项文字
****************************************************/
function AddOption(SelectID,Value,Text) 
{
	var Obj=$$(SelectID);
    var NewOptionTag=document.createElement('option');
    NewOptionTag.text=Text;
    NewOptionTag.value=Value;
    try 
	{
		Obj.add(NewOptionTag, Obj.selecedIndex); // IE only
    }
    catch(ex) 
	{
		Obj.add(NewOptionTag, Obj.options[0]); // doesn't work in IE
    }
}

/****************************************************
【函数作用】：判断是否存在某个值的Select选项
【参数】：
		SelectID:Select控件ID名
		ObjItemValue：列表项值
【返回值】：true 存在，false不存在
****************************************************/
function IsExitOption(SelectID, ObjItemValue)
{    
	var ObjSelect=$$(SelectID);
    var IsExit = false;        
    for (var i = 0; i<ObjSelect.options.length; i++) 
	{        
        if (ObjSelect.options[i].value == ObjItemValue) 
		{        
            IsExit = true;
            break;
        }        
    }        
    return IsExit;  
}

/****************************************************
【函数作用】：给Select赋值，即选中Select某项
【参数】：
		SelectID:Select控件ID名
		Value：需要被选中的值
		DefaultValue：如果需要被选中的值不存在，则选中默认值
****************************************************/
function SetSelectValue(SelectID,Value,DefaultValue) 
{
	if(DefaultValue==undefined)
		DefaultValue='';

	if(IsExitOption(SelectID,Value))
		$$(SelectID).value=Value;
	else
	{
		if(IsExitOption(SelectID,DefaultValue))
		{
			$$(SelectID).value=DefaultValue;
		}
	}
}

/****************************************************
【函数作用】：定义符号$$ 
【返回值】：返回对象 作用等同于 document.getElementById
****************************************************/
function $$() 
{ 
	var Elements = new Array(); 
	for (var i = 0; i < arguments.length; i++) 
	{ 
	  var Element = arguments[i]; 
	  if (typeof Element == 'string') 
		 Element = document.getElementById(Element); 
	  if (arguments.length == 1) 
		 return Element; 
	  Elements.push(Element); 
	} 
	return Elements;
}

/********** 【部分三 表格控制】 **********/
/****************************************************
【函数作用】：删除表格的所有行，只留下表头，用于AJAX列表时的清空
【参数】：
		TableID:需要被清空的表格ID名称
		HeadTRCount:表头行数
【返回值】：被选中的Radio项值
****************************************************/
function DelTR(TableID,HeadTRCount)
{
	if(TableID == undefined)
		var TableObj = $$("ListTable");
	else
		var TableObj = $$(TableID);
		
	var TableRowCount=TableObj.rows.length;
	if(HeadTRCount==undefined)
		var HeadTRCount=1;
	if(TableRowCount>HeadTRCount)
	{
		while(TableRowCount>HeadTRCount)
		{
			TableObj.deleteRow(HeadTRCount);
			TableRowCount--;
		}
	}
}

//TAG的添加和判断
function TAG(Value)
{
	if(Value!=undefined)
		var TAG = $.trim($('#Tag').val())+','+Value;
	else
		var TAG = $.trim($('#Tag').val());
	
	if(TAG!="")
	{
		var NewTAG="";
		var TAGArray=TAG.split(",");
		for(var i=0;i<TAGArray.length;i++)
		{
			if(TAGArray[i]!=""&&TAGArray[i]!=undefined)
			{
				if((","+NewTAG).indexOf(","+TAGArray[i]+",")==-1)
				{
					NewTAG+=TAGArray[i]+","
				}	
			}
		}
		var NewTAGArray=NewTAG.split(",");
		NewTag="";
		for(var i=0;i<NewTAGArray.length-2;i++)
		{
			NewTag+=NewTAGArray[i]+",";
		}
		NewTag+=NewTAGArray[NewTAGArray.length-2];
	}
	else
		NewTag="";
	$('#Tag').val(NewTag);
}


