



function selCheck(obj,objName)
{  
   var suf = "请选择";
   if(obj!=null)
   {
     if(obj.value=="")
	 {  
		alert(suf+objName);
	    obj.focus();
		return true;
	 }
	 else
	    return false;
   }
   else 
	 return false;

}
function txtCheck(obj,objName)
{  
   /**
     @reurn true: curobj is null
   */
   var suf = "请输入";
   if(obj!=null)
   {
     if(obj.value=="")
	 {  
		alert(suf+objName);
	    obj.select();
		return true;
	 }
	 else
	    return false;
   }
   else 
	 return false;
}
function addCheckArgs(obj,objName,objType)
{  
  
   var argsize = this.args.length;
   if(argsize==null)
	   argsize = 0;
   this.args[argsize] = new Array();
   this.args[argsize][0] =  obj;
   this.args[argsize][1] =  objName;
   this.args[argsize][2] =  objType;
   

}
function addFld(obj,objName)
{   
    
	if(obj.type=="select-one")
	{  
	    this.addField(obj,objName,"0");
	}
	else
	{
	    this.addField(obj,objName,"1");
	}
}
function addTxtFld(obj,objName)
{   
	
    this.addField(obj,objName,"1");
}
function addSelFld(obj,objName)
{
    this.addField(obj,objName,"0");
}
function SubCtrl(frm)
{  
   this.frm = frm;
   this.args = new Array();
   this.addField = addCheckArgs;
   this.addTxtFld = addTxtFld;
   this.addSelFld = addSelFld;
   this.addFld = addFld;
   this.sub = checkSub;
   this.check = checkFrm;
}
function checkFrm()
{
    /**
     checkArgs: 0:obj
	            1:objName
				2:objType(0:input;1:select)
  */
  var frm = this.frm;
  var flag = false;
  var checkArgs = this.args;

  if(checkArgs!=null)
  {  
     for(var i=0;i<checkArgs.length;i++)
     {
	   var obj     = checkArgs[i][0];
	   var objName = checkArgs[i][1];
	   var objType = checkArgs[i][2];
	   if(objType=="0")
	   {
	      flag = selCheck(obj,objName);
	   }
	   else if(objType=="1")
	   {
	      flag = txtCheck(obj,objName);
	   }
	   if(flag==true)
		  break;
	 }
  }
  return flag;
}
function checkSub(isSub)
{ 
   if(!this.check())
   {
      if(isSub!=null&&isSub)
       sub0();
   }
}

function mkRequestArgs(frm,name,value)
{
    var aInput = document.createElement("INPUT");
    aInput.setAttribute("name",name);
	aInput.setAttribute("value",value);
	aInput.setAttribute("type",'hidden');
	frm.appendChild(aInput);

}
function clRequestArgs(frm,name)
{
   for(var i=0;i<frm.elements.length;i++)
   {
      if(frm.elements[i].name==name)
	  {
	     frm.removeChild(frm.elements[i]);
	  }
   }
}
function HashMap()
{ 
   this.size = getSize;
   this.put = putKeyValue;
   this.get = getValue;
   this.keyInd = getKeyInd;
   this.keys = new Array();
   this.values = new Array();
}

function getKeyInd(key)
{
   var keyInd = -1;

   for(var i=0;i<this.keys.length;i++)
   {
      if(this.keys[i]==key)
	  {
	    keyInd = i;
		break;
	  }
   }
   return keyInd;
}

function  getSize()
{
   return this.keys.length;
}
function  putKeyValue(key,value)
{
   var keyInd = this.keyInd(key);
   if(keyInd==-1)
   {
     this.keys[this.keys.length] = key;
	 this.values[this.values.length] = value;
   }
   else
   {
     this.values[keyInd] = value;
   }
   
}
function  getValue(key)
{
   for(var i=0;i<this.keys.length;i++)
   {
      if(key==this.keys[i])
		  return this.values[i];
   }
   return null;
}

function sets(arr)
{
   var retarr = new Array();

   for(var i=0;i<arr.length;i++)
   {
      var isNew = true;
	  for(var j=0;j<retarr.length;j++)
	  {
	    if(retarr[j]==arr[i])
		{  
		   isNew = false;
		   break;
		}
	  }

	  if(isNew)
	  {
	    retarr[retarr.length] = arr[i];
	  }
   }
   return retarr;
}
function checkNumber(obj)
{   
	 var bReturn = true;
     var numbers = ".0123456789";
	 var value = obj.value;

     for(var i=0;i<value.length;i++)
	 {
	    if(numbers.indexOf(value.charAt(i))==-1)
		{
		   alert("字段为数字型");
		   obj.select();
		   bReturn = false;
		   break;
		}
	 }
	 return bReturn;
}

function setSelValue(selName,selValue,readonly){

  var obj = document.getElementsByName(selName)[0];

  for(var i=0;i<obj.options.length;i++){

     if(obj.options[i].value==selValue){
	    obj.options[i].selected = true;
	 }
  }
  if(readonly!=null&&readonly==true){
     obj.readonly = true;
  }
}

function setValue(objName,value,readonly){

  var obj = document.getElementsByName(objName);
  if(obj!=null){
     obj[0].value = value;
  }
  if(readonly!=null&&readonly==true){
     obj[0].readonly = true;
  }
}

function checkTel(fld){
  var str = fld.value;
  var rtn = true ;
  var numbers = "0123456789-";

  if(str=="")
	 rtn = true;

  for(var i=0;i<str.length;i++){
     if(numbers.indexOf(str.substring(i,i+1))==-1){
	    rtn = false;
		break;
	 }
  }
  return rtn;

}
function checkMobile(fld){
	var phone_number=fld.value;
	if(phone_number.length<1)
	{
		alert("请输入手机号码！！");
		return false;
	}
	if(isNaN(parseFloat(phone_number)))
	{
		alert("请您输入数字的手机号码！！");
		return false;
	}
	if(phone_number.length!=11)
	{
		alert("您的手机号码位数不对，请您重新输入！！");
		return false;
	}
	if(phone_number.substring(0,2)!="13")
	{
		alert("您输入的手机号码不正确，请您重新输入！！");
		return false;
	}
	return true;

}
function checkEmail(fld){
/*
  var str = fld.value;
  var rtn = true ;
  if(str.indexOf("@")==-1){
	 rtn = false;
  }
  return rtn;
  */
  return true;
}

function checkNum(fld){
 /* var str = fld.value;
  var rtn = true ;
  var numbers = "0123456789";
  for(var i=0;i<str.length;i++){
     if(numbers.indexOf(str.substring(i,i+1))==-1){
	    rtn = false;
		break;
	 }
  }*/
  return true;
}


function checkData(obj){
   
   if(obj.getAttribute("dataType")!=null){

	   if(obj.getAttribute("dataType")=="number"){
	      if(!checkNum(obj)){
		     alert("数字格式不正确");
			 obj.select();
			 return false;
		  }
	   }
	   else if(obj.getAttribute("dataType")=="tel"){

		   if(!checkTel(obj)){
		     alert("电话格式不正确！");
			 obj.select();
			 return false;
		   }
	   }
	   else if(obj.getAttribute("dataType")=="mobile"){

		   if(!checkMobile(obj)){
			 		obj.select();
			 		return false;
		   }
	   }

	   else if(obj.getAttribute("dataType")=="email"){
	      if(!checkEmail(obj)){
		     alert("邮箱地址格式不正确！");
			 obj.select();
			 return false;
		   }
	   }
   
   }
}

 function showAdd(padObj,tbObj){
	if(padObj.checked){
		 tbObj.style.display = "block";
    }
	else{
	     tbObj.style.display = "none";
    }
}

 function getStr(cbName){
    var allcbs = document.getElementsByName(cbName);
	var values = "";
	for(var i=0;i<allcbs.length;i++){
	  if(allcbs[i].checked){
	   values += "|"+allcbs[i].value;
	  }
    }
	if(values!="")
		values = values + "|"

	return values;
 }

 function setChecked(cbName,cbValues){
		var allcbs = document.getElementsByName(cbName);
		for(var i=0;i<allcbs.length;i++){
				if(cbValues.indexOf("|"+allcbs[i].value+"|")!=-1){
				  allcbs[i].checked = true;
		         }
        }
 }

 function checkNum(fld){
  var brtn = true;
  var numbers = "0123456789.";
  if(fld.value!=""){
      for(var i=0;i<fld.value.length;i++){
	      if(numbers.indexOf(fld.value.substring(i,i+1))==-1){
			  alert("字段为数字型");
			  fld.select();
		      brtn = false;
			  break;
		  }
	  }
  }
  return brtn;
}
