如题,在Google或者淘宝这些网站,在你搜索的时候,当你还没输入完毕的时候,就会在下面弹出一些类似的搜索关键词。
这种技术应该是用Ajax做的吧??请问哪位人兄有类似的代码呀,有的话分享分享!!!

解决方案 »

  1.   

    google.com  or baidu.com
      

  2.   

    AjaxControlToolkit里的AutoCompleteExtender控件
      

  3.   

    哪里有的下载,能发给我吗?[email protected]
      

  4.   

    var browserType=0;
        var xmlHttp;
        var xmlDoc;
        function createXMLHttpRequest()
        {
            if(window.ActiveXObject)
            {
                browserType=1;
                xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
            }
            else if(window.XMLHttpRequest)
            {
                xmlHttp = new XMLHttpRequest();
            }
        }
        
        function suggest(e)
        {
            var key=e.value;
            var keyword= document.getElementById("tbSearch").value;//获取查询条件
            selectObject = e;
            
            if(key)
            {
                
                var patrn=/^[^<,>,?,",:,;]*$/; //验证输入的内容是否合法
                if (!patrn.exec(key))
                {
                   alert("不能输入非法字符!") ;
                   e.value="";//清空输入的内容
                   return;
                } 
                createXMLHttpRequest();
                var url= "search.ashx?keyword="+encodeURIComponent(keyword)+"&rnd="+Math.random();
                xmlHttp.open("GET",url,true);
                xmlHttp.onreadystatechange=showResult;
                xmlHttp.send(null);
            }
        }
        
        function showResult()
        {
            if(xmlHttp.readyState==4)
            {
                if(xmlHttp.status==200)
                {
                    xmlDoc = xmlHttp.responseXML;//有处理页面返回的XML
                   suggestShow(selectObject);
                }
            }
        } 
        //显示信息
        function suggestShow(e) 
        {
           
            var moneyMsg = document.getElementById("suggest"); 
            var opn = "<ul class='suggestul'>";
            var records = xmlDoc.getElementsByTagName("record").length;
            if(records>0)
            {
                for ( i = 0; i < records; i++)
                {
                    opn += "<li class='suggestulli' onmouseover='this.style.backgroundColor=\"#c7dffa\";' onmouseout='this.style.backgroundColor=\"#FFFFFF\";' onclick='selectSuggest(this);'><span>";
                    opn += xmlDoc.getElementsByTagName("word")[i].firstChild.data;
                    opn += "</span><span class='suggestSpan'>" + xmlDoc.getElementsByTagName("wordSpell")[i].firstChild.data + "</span></li>";        
                }
                opn += "<li class='suggestulli' onclick='suggestHidden();'><span> Desgin By Feiin NetWork 051</span><span class='suggestSpan'>关闭</span></li></ul><div style='clear:both;'></div>";
                
                moneyMsg.innerHTML = opn; 
                 
                var obj=document.getElementById("tbSearch");//tbSearch为搜索框.
                if (browserType==1)
                 {
                                   
                       var x  = e.getBoundingClientRect().top;
                       var y = e.getBoundingClientRect().left;
                        document.getElementById("suggest").style.top= x+20+document.body.scrollTop+"px";
                        document.getElementById("suggest").style.left=y+document.body.scrollLeft+"px";
                  }
                  else
                  {                    var menu_leve2_content = findPos(e);
                        document.getElementById("suggest").style.top=menu_leve2_content[1]+18+"px";
                        document.getElementById("suggest").style.left=menu_leve2_content[0]+"px";
                   }
                document.getElementById("suggest").style.display = "block"; //显示信息
            }
            else
            {
                 document.getElementById("suggest").style.display = "none";//显示信息
            }
        } 
        
        function suggestHidden() 
        {
              document.getElementById("suggest").style.display = "none"; //隐藏信息
        }
        
        function selectSuggest(obj)
        {
            var selectObj;
            if(browserType==1)
            {
              selectObj=obj.getElementsByTagName("span")[0].innerText;
                
            }
            else
            {
              selectObj=obj.getElementsByTagName("span")[0].textContent;
            }
            document.getElementById("tbSearch").value=selectObj;
            suggestHidden();
        }function findPos(obj)//ff中定位显示div
     {
           var curleft = curtop = 0;
           if (obj.offsetParent) 
           {
                curleft = obj.offsetLeft
                curtop = obj.offsetTop
                while (obj = obj.offsetParent)
                 {
                 curleft += obj.offsetLeft
                 curtop += obj.offsetTop
            }
           }
           return [curleft,curtop];
    }
      

  5.   

    这个地方去下:
    http://download.csdn.net/source/358083