﻿// JScript 文件
var Sel_State=0;//目的地选择状态,1-省或市或县选中,2-选择省份删除,3-选择城市删除,4-选择县删除
var Sel_Tag=1;//1代表省
var currentid="";//当前控件的id
            function showmenu()
            {
            currentid=document.activeElement.id; //当前控件的id
                    if(currentid=="Start_Name")
                        {
                        MM_showHideLayers('Layer1','','hidden'); //目的地
                         MM_showHideLayers('Layer2','','show'); //出发地
                         if(document.getElementById("cur_class").value=="HR_admin_exView_Expo")
                         {document.getElementById("Layer2").style.top="510px";
                          document.getElementById("Layer2").style.left="200px";
                         }
                         else
                         {
                         document.getElementById("Layer2").style.top="164px";
                         document.getElementById("Layer2").style.left="249px";
                          }
                        }
                        else
                           if(currentid=="Destinct_Name")
                           {MM_showHideLayers('Layer1','','show');//目的地
                            MM_showHideLayers('Layer2','','hidden'); //出发地
                            document.getElementById("Layer1").style.top="164px";
                            document.getElementById("Layer1").style.left="249px";
                           }
                           
                 
            }
            function MM_findObj(n, d) { 
                  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
                    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
                  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
                  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
                  if(!x && d.getElementById) x=d.getElementById(n); return x;
                }
            function MM_showHideLayers() {
                  var i,p,v,obj,args=MM_showHideLayers.arguments;
                  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
                    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
                    obj.visibility=v; 
                    }
                }
            //隐藏select列表
            function showWindowedObjects(show) {
                if(show)
                    {
                    document.form1.Select_Grade.style.display='';
                    document.form1.Select_obj.style.display='';
                    }
                else
                    {
                    document.form1.Select_Grade.style.display='none';
                    document.form1.Select_obj.style.display='none';
                    }
            }
            function showSelect()
            {
                if(document.getElementById("Layer1").style.visibility=="hidden")
                    showWindowedObjects(true);
                else
                    showWindowedObjects(false);
            }
	        function regInput(obj, reg, inputStr)
	        {
		        var docSel	= document.selection.createRange()
		        if (docSel.parentElement().tagName != "INPUT")	return false
		        oSel = docSel.duplicate()
		        oSel.text = ""
		        var srcRange	= obj.createTextRange()
		        oSel.setEndPoint("StartToStart", srcRange)
		        var str = oSel.text + inputStr + srcRange.text.substr(oSel.text.length)
		        return reg.test(str)
	        }
	        
	        
	        
	        /*******************目的地函数***************************/
	         function ViewDestinctCity(strCode,strAreaName)
                {
                    //清除县级
                    div_DestinctCountry.innerHTML="";
                    if(document.getElementById("div_DestinctPort")!=null)
                    {
                    div_DestinctPort.innerHTML="";
                    }
                    div_DestinctCity.innerHTML=eval(document.getElementById("cur_class").value).GetDestinctCity(strCode,strAreaName).value;
                }
                
                 function ViewDestinctCountry(strCode,strAreaName)
                {
                    div_DestinctCountry.innerHTML=eval(document.getElementById("cur_class").value).GetDestinctCountry(strCode,strAreaName).value;
                }
                 function ViewDestinctPort(strCode,strAreaName)
                {
                    div_DestinctPort.innerHTML=eval(document.getElementById("cur_class").value).GetDestinctPort(strCode,strAreaName).value;
                }
                
                /*还源原来的数据,供点击清空选择时调用*/
                function SetDestinct_init()
                {  
                       document.getElementById("state").innerHTML=eval(document.getElementById("cur_class").value).SetDestinct_init("labeltext").value;
                        
                }
                /*************************/
                
                /************得到所选城市****************************/
                function SelectDestinctValue(strAreaCode,strAreaName)
                {
                if(document.getElementById("Destinct_Name").value=="       --单击选择--")
                {
                document.getElementById("Destinct_Name").value=document.getElementById("Destinct_Name").value.replace("       --单击选择--","");
                }
                  if(Sel_State==1) //单击添加,如果原来的code值已经存在，则不再添加
                  {  
                if(document.getElementById("Destinct_Code").value.length==0)
                    {document.getElementById("Destinct_Code").value=strAreaCode;
                    document.getElementById("Destinct_Name").value=strAreaName;
                    }
                    else
                    {
                    if(document.getElementById("Destinct_Code").value.indexOf(strAreaCode)==-1) //添加之前查找是否已经存在code值，这在添加包裹重量范围时，体现更明显
                       {
                    document.getElementById("Destinct_Code").value=document.getElementById("Destinct_Code").value+","+strAreaCode;
            document.getElementById("Destinct_Name").value=document.getElementById("Destinct_Name").value+","+strAreaName;
                       }
                    }
                   
                    //获取最底层数据,即如果有选择市，则，省id去除，如果有选择县，则市id去除
                  var OrgDcode=new Array(); //原来的Code值
                  var NewDcode=new Array(); //新的Code值
                  var OrgDcname=new Array(); //原来的Areaname
                  var NewDcname=new Array(); //新的Areaname
                  var NewNum=0; //新的非null值的数组元素个数
                  OrgDcode=document.getElementById("Destinct_Code").value.split(',');
                  OrgDcname=document.getElementById("Destinct_Name").value.split(',');
                  if(OrgDcode!=null)
                  {
                  for(var i=0;i<OrgDcode.length;i++)
                    {
                         switch(Sel_Tag)
                            {case 2: //如果选择市,则删除原先目的地文本框中的省份
                             if(OrgDcode[i]!=strAreaCode.substring(0,2)+"0000")
                               {
                                NewDcode[i]=OrgDcode[i];
                                NewDcname[i]=OrgDcname[i];
                                //Destinct_Code与Destinct_Name同步
                                }
                              break;
                              case 3: //如果选择县,则删除原先目的地文本框中的市
                              if(OrgDcode[i]!=strAreaCode.substring(0,4)+"00")
                               {
                                NewDcode[i]=OrgDcode[i];
                                NewDcname[i]=OrgDcname[i];
                                //Destinct_Code与Destinct_Name同步
                                }
                              break;
                            }
                    
                   
                    }
                    for(var i=0;i<NewDcode.length;i++)
                    {if(NewDcode[i]!=null)
                      {NewNum++;
                        if(NewNum==1)
                         {document.getElementById("Destinct_Code").value=NewDcode[i];
                          document.getElementById("Destinct_Name").value=NewDcname[i];
                         }
                         else 
                         {document.getElementById("Destinct_Code").value=document.getElementById("Destinct_Code").value+","+NewDcode[i]; 
                         document.getElementById("Destinct_Name").value=document.getElementById("Destinct_Name").value+","+NewDcname[i];
                       //Destinct_Code与Destinct_Name同步
                         }
                      }
                    }
                     
                   }
                   
                   //获取最底层数据获取结束
                    
                }
                else //单击删除(删除原理:把原来目的地的code值中指定位置的值与参数strAreaCode中指定位置的值进行比较,不相等的保留,相等的不保留,保留即留下,不保留即删除
                {
                 var Code_Value=document.getElementById("Destinct_Code").value; //删除前的目的地code值
                  var Code_Para=new Array(); //删除前的目的地code数组
                  var Code_Result=new Array(); //删除后的code数组
                  var Name_Result=new Array(); //删除后的目的地名称数组
                  var Name_Para=new Array(); //删除前的目的地名称数组
                  var Code_Length=0; //删除前的code数
                  var Result_Length=0; //删除后的code数
                  Code_Para=Code_Value.split(",");
                  Name_Para=document.getElementById("Destinct_Name").value.split(",");
                  Code_Length=Code_Para.length;
                  var z=0;
                  for(var y=0;y<Code_Length;y++)
                     {
                     switch(Sel_State)
                     {    case 2: //单击省份删除
                     if(Code_Para[y].toString().substring(0,2)!=strAreaCode.substring(0,2)) //元素值与前两位与传过来的不一样的保留，一样的删除
                           {
                      Code_Result[z]=Code_Para[y];
                       Name_Result[z]=Name_Para[y];
                       //Destinct_Code与Destinct_Name同步
                           }
                          break;
                          case 3: //单击城市删除
                           if(Code_Para[y].toString().substring(0,4)!=strAreaCode.substring(0,4)) //元素值与前四位与传过来的值不一样的保留，一样的删除
                           {
                      Code_Result[z]=Code_Para[y];
                       Name_Result[z]=Name_Para[y];
                       //Destinct_Code与Destinct_Name同步
                           }
                          break;
                          case 4: //单击县删除
                          case 5: //单击港口删除
                         if(Code_Para[y].toString()!=strAreaCode) //元素值与传过来的值不一样的保留，一样的删除
                           {
                      Code_Result[z]=Code_Para[y];
                      Name_Result[z]=Name_Para[y];
                      //Destinct_Code与Destinct_Name同步
                           }
                          break;
                     }    
                        z++;
                     }
                  Result_Length=Code_Result.length;//Code_Result.length如果大于0并不表示没有null值的元素，如数组一:1,2,3,4 数组二1,null,3,4的情况(不等于2的留下)
                  var n=0;//计算非null值的数据个数
                  for(var cc=0;cc<Result_Length;cc++)
                  {
                  if(Code_Result[cc]!=null) //先查找不等于null的元素
                  {n++;
                   if(n==1) //只有一个非null值元素
                    {document.getElementById("Destinct_Code").value=Code_Result[cc].toString();
                    document.getElementById("Destinct_Name").value=Name_Result[cc].toString();
                    }
                    else //两个以上的非null值元素
                    {document.getElementById("Destinct_Code").value=document.getElementById("Destinct_Code").value+","+Code_Result[cc].toString();
                    document.getElementById("Destinct_Name").value=document.getElementById("Destinct_Name").value+","+Name_Result[cc].toString();
                    }
                  }
                  }
                  if(Result_Length==0) //没有元素时
                  {document.getElementById("Destinct_Code").value="";
                  document.getElementById("Destinct_Name").value="";
                  }
                  
                  }
               
  
                } 
	   	        function ClearDestinct() //清空目的地数据
	   	        {
	   	      SetDestinct_init();
                    document.getElementById("Destinct_Name").value="       --单击选择--";
                    document.getElementById("Destinct_Code").value="";
                   document.getElementById("Layer1").style.visibility="hidden"; 
                        /********************************************************/
	   	             
	   	        }
	   	        
	   	        
	   	    /***************************************************/
	   	    /*******************以下为出发地或根据当前控件识别的函数***************************/
	   	      function ViewStart_City(strCode,strAreaName)
                {
                    //清除县级
                    divStart_Country.innerHTML="";
                    if(document.getElementById("divStart_Port")!=null)
                    {
                    divStart_Port.innerHTML="";
                    }
                    divStart_City.innerHTML=eval(document.getElementById("cur_class").value).GetStart_AreaCity(strCode,strAreaName).value;
                }
            function ViewStart_Country(strCode,strAreaName)
                {
                    divStart_Country.innerHTML=eval(document.getElementById("cur_class").value).GetStart_AreaCountry(strCode,strAreaName).value;
                }
                function ViewStart_Port(strCode,strAreaName)
                {
                    divStart_Port.innerHTML=eval(document.getElementById("cur_class").value).GetStart_AreaPort(strCode,strAreaName).value;
                }
                
                /************得到所选城市****************************/
                function SelectStart_Value(strAreaCode,strAreaName)
                { 
                 if(currentid=="Start_Name")
                    {
                    document.getElementById("Start_Name").value=strAreaName;
                    document.getElementById("Start_Code").value=strAreaCode; 
                    }
                    else
                       if(currentid=="Destinct_Name")
                       {document.getElementById("Destinct_Name").value=strAreaName;
                    document.getElementById("Destinct_Code").value=strAreaCode; 
                       }
                       /*******************隐藏三级联动*******************/
                      document.getElementById("Layer2").style.visibility="hidden"; 
                        /********************************************************/
                       
                  
                } 
	   	        function ClearStart_AreaValue()
	   	        {
	   	             if(currentid=="Start_Name")
	   	             {
	   	            document.getElementById("Start_Name").value="--单击选择--";
                    document.getElementById("Start_Code").value="";  
                    }
                    else
                        if(currentid=="Destinct_Name")
	   	                 {
	   	                document.getElementById("Destinct_Name").value="--单击选择--";
                        document.getElementById("Destinct_Code").value="";  
                        }
                        
                    /*******************隐藏三级联动*******************/
                      document.getElementById("Layer2").style.visibility="hidden"; 
                        /********************************************************/
                   
	   	        }

	   	        function StartChinaorWorld(Tag)  //(单选,只针对出发地)绑定国内或国际数据,供点击顶部的国际国内链接时调用,1国内，０国际
                {
                     if(currentid=="Start_Name") //出发地
                      {
                         document.getElementById("start").innerHTML=eval(document.getElementById("cur_class").value).StartChinaorWorld(Tag).value;
                      }
                       
                       
                }

                function DestinctChinaorWorld(Tag) //(多选,只针对目的地)绑定国内或国际数据,供点击顶部的国际国内链接时调用,1国内，０国际
                {
                       if(currentid=="Destinct_Name") //目的地
                      {
                          
                 document.getElementById("state").innerHTML=eval(document.getElementById("cur_class").value).DestinctChinaorWorld(Tag).value;
                      }
                       
                }
                
	   	        