﻿             ////tbControlText.Attributes.Add("onkeydown", "if(event.keyCode==13){return(false);};");
                // if (!tbControlText.ReadOnly)
                //{
                ////tbControlText.Attributes.Add("onkeyup", "How2go.SearchComplete.Keyup(event.keyCode,'" + controlI + "','" + controlT + "','" + (byte)Ajax + "','" + lbAutoComplete.ClientID + "','" + imgAuto.ClientID + "'," + (!tbControlText.ReadOnly).ToString().ToLower() + ");");
                
                
//======================================================
//　　　　　　　　　     \\\|///                      
//　　　　　　　　　   \\　- -　//                   
//　   www.How2go.com  ( @ @ ) www.csharpbbs.com                    
//┏━━━━━━━━━oOOo-(_)-oOOo━━━┓          
//┃　　　　　　　　　　　　　　　　 　　┃
//┃　　　　　　　东 网 原 创 　　　　　 ┃
//┃　　　　美人草作品，请保留此信息！ 　┃
//┃　　　** csharpbbs@hotmail.com **    ┃
//┃　　　** How2go@hotmail.com **　   ┃
//┃　　　**   www.dituapi.com    **　   ┃
//┃　　　**    QICQ 351310701    **　   ┃
//┃　　　　　　　　　　　　　Dooo　     ┃
//┗━━━━━━━━━ oooD━-(　 )━━━┛
//　　　　　　　　　　 (  )　  ) /
//　　　　　　　　　　　\ (　 (_/
//　　　　　　　　　　　 \_)
//===========上海东网技术服务有限公司=============

Namespace.register("How2go.SearchComplete");
How2go.SearchComplete={

	ImagesOut:''	
	
	,
	ImagesOver:''
	,
	Status:false
	
	,
	Keydown:function(e)
	{
        if (e.keyCode==13)
        {
            return(false);
        }

	}
	,
	Init:function(text,city,action,sel,images,send)
	{		
	    var Text=How2go.$(text);
	    var City=How2go.$(city);
	    var Select=How2go.$(sel);
	    var Images=How2go.$(images);
	    
	    if (null!=Text)
	    {
	    
				if (!How2go.Typeof(Text.city))
				{
				    Text.parentNode.style.position='relative';
				            if (How2go.IE)
				            {
				                Select.style.marginTop=(parseInt(Text.parentNode.offsetHeight)/2+parseInt(Text.offsetHeight)/2)+'px';
						        Text.setAttribute('lat','');
						        Text.setAttribute('lon','');
						        Text.setAttribute('city','');
						        Text.setAttribute('codeName','');
						        Text.setAttribute('address','');
						        Text.setAttribute('tel','');
						    }
						    else
						    {
						        Text.lat='';
						        Text.lon='';
						        Text.city='';
						        Text.codeName='';
						        Text.address='';
						        Text.tel='';					    
						    }
				}	    
					    
					    
	            if (How2go.IE)
	            {
	                //Text.onkeydown=function()
	                //{
	                    //How2go.SearchComplete.Keydown(event);
	                //}
					if (send)
					{
						Text.onkeyup=function()
						{
							How2go.SearchComplete.Keyup(event.keyCode,text,city,action,sel,send);
						}
					}
	            }
	            else
	            {
	                //Text.onkeydown=function(event)
	                //{
	                    //How2go.SearchComplete.Keydown(event);
	                //}
					if (send)
					{
						Text.onkeyup=function(event)
						{
							How2go.SearchComplete.Keyup(event.keyCode,text,city,action,sel,send);
						}
					}
	            }
	        Text.onmouseover=function()
	        {
	            How2go.SearchComplete.Init(text,city,action,sel,images,send);
	        }
	    }
	    //return;
	        Images.onmouseover=function()
	        {
	            How2go.SearchComplete.Init(text,city,action,sel,images,send);
	            Images.src=How2go.SearchComplete.ImagesOver;
	        }
	        Images.onmouseout=function()
	        {
	            Images.src=How2go.SearchComplete.ImagesOut;
	        }
	        Select.onmouseover=function()
	        {
	            Images.src=How2go.SearchComplete.ImagesOver;		            
	            Select.style.display='block';
	            //s.style.display='block';
	        }
	        Images.onclick=function()
	        {
	            
	            if (Select.style.display=='none')
	            {
	                Images.src=How2go.SearchComplete.ImagesOver;	 
	                Select.style.display='block';
	            }
	            else
	            {
	                Images.src=How2go.SearchComplete.ImagesOut;	 
	                Select.style.display='none';
	            }
	            
	            //s.style.display='block';
	        }
	        Select.ondblclick=function()
	        { 
				//alert(Select.id);
	           Select.style.display='none'; 
	            
	        }
			//Select.onmouseout=function()
//	        { 
//				//alert(Select.id);
//	           Select.style.display='none'; 
//	            
//	        }
	        
	        Select.onclick=Select.onchange=function()
        		{
        			if (Select.options.selectedIndex!=-1)
        				{
        				        if (null!=Text)
        				        {
        						    Text.value=Select.options[Select.options.selectedIndex].text;
        						    Text.lat=Select.options[Select.options.selectedIndex].lat;
        						    Text.lon=Select.options[Select.options.selectedIndex].lon;
        						    Text.city=Select.options[Select.options.selectedIndex].city;
        						    Text.codeName=Select.options[Select.options.selectedIndex].codeName;
        						    Text.address=Select.options[Select.options.selectedIndex].address;
        						    Text.tel=Select.options[Select.options.selectedIndex].tel;
        						}
        				}
        		}	    
		
	}
	
	,
	Hidden:function(sel)
	{
		setTimeout(function(){
			if (!this.Status)
			{
			sel.style.display='none';
			}
		},50);
	}
	,
	Post:function(action,sel,city,text)
	{
	   // action,sel,text,city
	    
	    var Select=How2go.$(sel);
	    var Text=How2go.$(text);
	    var City=How2go.$(city);
	  
		    How2go.Ajax.Post('How2go.SearchComplete',
		    'action='+action+'&KeyWord='+Text.value+'',{oncomplate:function(){setTimeout(function(){
		    
		    //			this.Status=false;
			var json=eval(How2go.Ajax.ResponseText['How2go.SearchComplete']);
			Select.length=0;
			   if (json[0].Status && json.length>1)
			   {
				   for(var i=1;i<json.length;i++)
				   {
					   Select.length=i;
					   Select.options[i-1].value=json[i].Text;
					   Select.options[i-1].text=json[i].Text;
					   Select.options[i-1].lat=json[i].Text;
					   Select.options[i-1].lon=json[i].Text;
					   Select.options[i-1].city=json[i].Text;
					   Select.options[i-1].codeName=json[i].Text;
					   Select.options[i-1].address=json[i].Text;
					   Select.options[i-1].tel=json[i].Text;
						    
				   }
				  	this.Status=true;
			//if (this.Select.length>0)
			//{
				Select.style.display='block';
			   }
			   else
			   {
			        this.Status=false;
					//this.Hidden(s);
			   }
		    
		    
		    //this.Complete();
		    },50);
		    }
		    }
		    );
		//}
	}
	,
	Keyup:function(keyCode,text,city,action,sel,post)
	{		
	    //event.keyCode,text,city,action,sel,true
	    
	    var Text=How2go.$(text);
	    var City=How2go.$(city);
	    var Select=How2go.$(sel);  
	    
		if (keyCode==40 || keyCode==38)
			{
				if (Select.length>0)
				{
					if (Select.options.selectedIndex==-1)
					{
						if (keyCode==38)//down
						{
						Select.options[Select.length-1].selected=true;
						}
						else
						{
						Select.options[0].selected=true;
						}
					}
					else
					{
						if (keyCode==40)//down
						{
							if (Select.options.selectedIndex<(Select.length-1))
							{
								Select.options[parseInt(Select.options.selectedIndex)+1].selected=true;
							}
						}
						else if (keyCode==38)//up 
						{
							if (Select.options.selectedIndex>0)
							{
								Select.options[parseInt(Select.options.selectedIndex)-1].selected=true;
							}
						}
					}
					this.Status=true;
					Select.style.display='block';
					if (null!=Text)
					{
					    Text.value=Select.options[Select.options.selectedIndex].text;
					    Text.lat=Select.options[Select.options.selectedIndex].lat;
					    Text.lon=Select.options[Select.options.selectedIndex].lon;
					    Text.city=Select.options[Select.options.selectedIndex].city;
					    Text.codeName=Select.options[Select.options.selectedIndex].codeName;
					    Text.address=Select.options[Select.options.selectedIndex].address;
					    Text.tel=Select.options[Select.options.selectedIndex].tel;
					}
					return false;
				}
				else
				{
					this.Status=false;
					//this.Hidden(s);
				}
			}
			if(keyCode==13){	
			this.Status=false;
			Select.style.display='none';
			return false;
			}
			if (post)
			{
			this.Post(action,sel,text,city);
			//setTimeout(function(){How2go.SearchComplete.Post(value,textbox,action,sel);},50);
			}
		return true;
	}
}
