色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

十分鐘打造AutoComplete自動(dòng)完成效果代碼

.老生常談---XmlHttpRequest
代碼
復(fù)制代碼 代碼如下:
var xmlHttp;
function createXmlHttpRequest()
{
if(window.ActieveXObject)
{
xmlHttp=new ActieveXObject("Microsoft.XMLHTTP");
}
else if(window.XMLHttpRequest)
{
xmlHttp=new XMLHttpRequest();
}
}

如果不用Jquery手寫Javascript,上面要改成XmlHttpRequest對(duì)象池,這就不寫了。
.觸發(fā)AutoComplete函數(shù)
代碼
復(fù)制代碼 代碼如下:
function $E(argument)
{
return document.getElementById(argument);
}

function GetInfo(e)
{
var input=$E("Text1").value;
if(input.length<=0)
{
changeDisplay();
}
else
{
createXmlHttpRequest();
var keyword=e.value;

xmlHttp.onreadystatechange=readyStateChangeHandle;
var url="AutoComplete.ashx?keyword="+keyword+"&timeStamp="+new Date().getTime();
xmlHttp.open("GET",url,true);
xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
xmlHttp.send(null);
}
}

這里服務(wù)器后臺(tái)是在.NET平臺(tái)下的xxx.ashx一般處理程序響應(yīng)客戶端得請(qǐng)求,當(dāng)然也可以用webserviece或者ASPx.cs或WCF來響應(yīng)客戶端得請(qǐng)求,但是需要注意的是webservice響應(yīng)客戶端必須遵循遵循soap協(xié)議(當(dāng)然也可以通過修改配置文件讓webservice響應(yīng)get或post請(qǐng)求),xxx.ashx和ASPx.cs響應(yīng)客戶端要遵循h(huán)ttp協(xié)議。當(dāng)然后臺(tái)也可以phpJava等。
.鼠標(biāo)move變色
復(fù)制代碼 代碼如下:
function changecolor(event)
{

event.style.background="#00FFFF";

}
function changebackcolor(event)
{
event.style.background="#FFFFFF"
}


.選區(qū)隱藏與出現(xiàn)
代碼
復(fù)制代碼 代碼如下:
function ChangeDivDisplay(e)
{
document.getElementById("Text1").value=e.firstChild.data;
var html="";
document.getElementById("searchResult").innerHTML=html;
document.getElementById("searchResult").style.visibility="hidden";
}

function changeDisplay()
{
var html="";
document.getElementById("searchResult").innerHTML=html;
document.getElementById("searchResult").style.visibility="hidden";
}

.回調(diào)函數(shù)
代碼
復(fù)制代碼 代碼如下:
function readyStateChangeHandle()
{
if(xmlHttp.readyState==4)
{
if(xmlHttp.status==200)
{

if(xmlHttp.responseText!="]")
{
var resultDiv=$E("searchResult");

var josnStr=eval('('+xmlHttp.responseText+')');
var html="";

for (var key in josnStr)
{

html+= "<span onmousemove=/"changecolor(this)/" onclick=/"ChangeDivDisplay(this)/" onmouseout=/"changebackcolor(this)/" style=/"width: 195px; text-align: left; background-color: #FFFFFF; display: block; cursor: default;/">"+josnStr[key].bookName +"<span style=/" color: #008000; float: right;/">"+josnStr[key].bookCount+"本書</span></span>";

}
html+= "<span style=/" width: 195px; background-color: #FFFFFF; display: block;/"><a href=/"Javascript:changeDisplay()/" style=/"float: right;/">關(guān)閉</a></span>";

resultDiv.innerHTML=html;
document.getElementById("searchResult").style.visibility="visible";
}
else
{
changeDisplay();
}
}
}
}

這里我用的是json,當(dāng)然也可以用XML或者字符串。

JavaScript技術(shù)十分鐘打造AutoComplete自動(dòng)完成效果代碼,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 揭西县| 宁远县| 大竹县| 雷波县| 旬阳县| 镇沅| 尉氏县| 贵州省| 海兴县| 西丰县| 阆中市| 固镇县| 澄江县| 石渠县| 中阳县| 汤阴县| 香格里拉县| 兴文县| 宜昌市| 张家港市| 信丰县| 钦州市| 木兰县| 天柱县| 长汀县| 灵璧县| 荔波县| 马鞍山市| 石狮市| 文化| 雅江县| 沧州市| 延边| 鄱阳县| 佛教| 运城市| 莱西市| 新邵县| 广安市| 洪洞县| 阿克苏市|