日期:2014-05-16 浏览次数:20523 次
$(".searchText").bind("keyup", function(){
if(later!=null) clearTimeout(later);
later = setTimeout(function(){
var keyword = $(".searchText").val();
if(keyword!=""){
$.get("/skin.aspx", {keywords: keyword}, function(data){
var resHtml = "";
if($(data).find("keyword").length > 0){
$(data).find("keyword").each(function(index){
resHtml += "<li onmouseover=\"rs_event.hover()\" onmouseout=\"\" onclick=\"rs_event.click('"+$(this).find("name").text()+"')\">"+$(this).find("name").text()+"</li>\n";
});
$(".search_complete").html("").append(resHtml).show();
if($(data).find("keyword").length>20){
$(".search_complete").css({height:'400px', overflowY:'auto'});
}else{
$(".search_complete").css({height:'auto'});
}
}else{
$(".search_complete").hide();
}
});
}else{
$(".search_complete").hide();
}
}, 800) ;
});
------解决方案--------------------
能获取数据的话,剩下的就是定义div的显示样式而已,用css,我感觉用jquery中的ajax还是挺好用的
------解决方案--------------------
其实网上有现成的js控件的.
我前不久也模仿的写过。
我去找找!
------解决方案--------------------
学习下 哈!
------解决方案--------------------
纯js写的
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Auto Complete</title>
<style type="text/css">
.hlight{background-color:Red}
.normal{backgroud-color:transparent;}
</style>
<script language="javascript" type="text/javascript" src="../../JS/jquery-1[1].3.2.min.js"></script>
<script>
function doit(evt)
{
evt = (evt) ? evt : ((window.event) ? window.event : "");
var key = evt.keyCode?evt.keyCode:evt.which;
if(key==38|key==40|key==13)return;
var wd = document.getElementById("wd").value;
if(wd.length==0)return;
$.ajax({
url:'../../Example/AutoComplete/Handler1.ashx',
type:'POST',
dataType:'json',
data: "wd="+wd,
error:function(x){alert(x.status);},
success:function(data){$("#show_wd").html(setTable(data)).show();}
});
}
//设置拼接Table
function setTable(jsn)
{
if(jsn.s.length==0|jsn.s[0]==""|jsn.s[0]=="undefined")
{
document.getElementById("show_wd").style.display="none";
return"";
}
var html ="<table id=\"tb\" width=\"100%\">";
for(var i in jsn.s)
{
html+="<tr onmouseover=\"hLight(this)\"><td on